我需要在此输出中添加一个名为“Location”的附加列,其中每行数据都包含单词“Varonis”。
$fs | ForEach-Object {
$machine = $_.ServerName
$_.Volumes | Select-Object @{n='machine';e={$machine}}, Share, FileWalkMethod
} | Export-Csv D:\data\splunk\otl_varonis\otl_varonis_monitoring.csv -NoType
当前输出:
"hmanas01n","E$","VaronisWindows"
期望的输出:
"hmanas01n","E$","VaronisWindows", "Varonis"
答案 0 :(得分:2)
基本上这是一个如何将自定义字段添加到现有对象(即数据)的问题......
在您给出的代码示例中,输出列由以下命令定义:
Select-Object @{n='machine';e={$machine}}, Share, FileWalkMethod
这有效地将数据过滤为共享和 FileWalkMethod 属性,以及添加名为计算机的新列。 计算机列定义了两个键值对: n (或名称/标签)是列标题, e (或表达式)是一些设置该列值的代码;在这种情况下,无论 $ machine 变量设置为。
您需要复制添加计算机列的相同机制,方法是将其添加到Select-Object
语句的末尾,其中表达式只是一个静态值:
@{n="Location";e={"Varonis"}}