在KQL中是否有简便方法可打印输出多个变量的值?
KQL 多变量值打印实现方案
KQL 没有独立的多语句打印语法,可通过以下几种简便方式实现不同的输出需求:
1. 实现每行输出一个变量值
通过union拼接多条print语句即可,代码示例:
let a = 1; let b = 2; let c = 3; print a union print b union print c
输出效果:
1 2 3
2. 实现同行输出所有变量值
直接在print后追加多个变量参数即可,代码示例:
let a = 1; let b = 2; let c = 3; print a, b, c
输出效果:
a b c 1 2 3
3. 实现带变量名的标准化输出(最优推荐)
如果需要清晰展示变量名与对应值的匹配关系,可通过datatable配合字符串拼接实现,代码示例:
let a = 1; let b = 2; let c = 3; datatable(变量名:string, 变量值:dynamic) [ "a", a, "b", b, "c", c ] | extend 输出 = strcat(变量名, " = ", 变量值) | project 输出
输出效果:
输出 a = 1 b = 2 c = 3
如果变量数量较多,可以用动态包自动展开的写法省去手动写datatable条目:
let a = 1; let b = 2; let c = 3; print bag_pack("a",a, "b",b, "c",c) | mv-expand kind=array item = $1 | project strcat(item[0], " = ", item[1])
内容的提问来源于stack exchange,提问作者Kosh
相关产品推荐
相关产品推荐

