变量$ Comp在管道export-csv中不可访问。输出的excel文件名变为''_Users.csv
get-content "Servers.txt" | foreach-object {
$Comp = $_
if (test-connection -computername $Comp -count 1 -quiet)
{
} Else
{
Write-Warning "Server '$Comp' is Unreachable hence Could not fetch data"
}
}|Export-Csv -NoTypeInformation "'$Comp'_Users.csv"
答案 0 :(得分:1)
除了脚本块参数外,在管道处理开始之前,一次绑定命令行参数 。
因此,在您传递给$Comp
的脚本块为 之前,将"'$Comp'_Users.csv"
自变量"$Comp_Users.csv"
(我假设您是指ForEach-Object
)展开为曾经打电话过。
$null
,它的计算结果为$Comp
-症状如显示的那样,它变成了可扩展字符串中的空字符串,或者使用任何预先存在的$Comp
值。要为每个输入对象(文件Servers.txt
中的行)导出到一个不同的文件,您必须将Export-Csv
调用移至ForEach-Object
脚本中封锁。