我有一个包含两列的.csv表格(将来可能会添加更多列)。 A列是PC主机名列表,B列是A / B列的文本名称列表(手动添加/更新),见下面的示例:
A B PC1 John PC2 Luke PC3 Alfred PC4 Dion
我想要做的是有一个PS脚本导入.csv并将列分隔为例如$ColumnA
,$ColumnB
。我可以ping $ColumnA
中的每个值,并将$ColumnB
作为文本添加到同一行,这样您就可以知道PC是谁。手动拥有ColumnB的原因是我们不会手动更新此字段而不是查询WMI等。
此外,最终一旦我有这个工作,我想添加更多并添加ColumnC与PC位置。另外,我希望在基础工作(我明白了)之后,在不久的将来使用$ColumnA
构建脚本并进行更多查询。
答案 0 :(得分:0)
PowerShell中的所有内容都是对象,因此,当您导入csv文件时,它将继承您的CSV标头。
在你的例子中:
$CSVvar = import-csv C:\yourCSVFile.csv -delimiter ' '
Write-Host $ CSVvar.A:
PC1
PC2
PC3
PC4
Write-Host $ CSVvar.B:
John
Luke
Alfred
Dion
Write-Host $ CSVvar.B [1]:
Luke
因此,如果您想在B列的每一行测试您的连接:
for($i=0; $i -lt $CSVvar.length; $i++){
test-connection $CSVvar.B[$i]
}
小心分隔符,它只能是一个字符长度。
希望这会有所帮助。 :)