powershell - 导入 CSV 和 Foreach

标签 powershell csv foreach

我有一个巨大的逗号分隔 CSV 列表,其中包含我想要对其运行查询的网络的 IP 地址。我的 CSV 输入示例:

172.168.0.1,172.168.0.2,172.168.0.3,172.168.0.4

等等......

当我运行以下代码来测试输出时:

$filepath = "c:\scripts\servers.csv" 
$servers = Import-CSV $filepath -delimiter "," 

Foreach ($server in $servers) {
     write-host $server

}

我没有得到任何输出,我认为这是因为没有指定标题。显然我可以采取解决方法,打开 CSV 文件并输入所有标题。还有其他方法可以解决这个问题吗?

最佳答案

您可以动态创建 header (当分隔符为逗号时无需指定分隔符):

Import-CSV $filepath -Header IP1,IP2,IP3,IP4 | Foreach-Object{
   Write-Host $_.IP1
   Write-Host $_.IP2
   ...
}

关于powershell - 导入 CSV 和 Foreach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15173213/

相关文章:

powershell - Azure key 保管库 : Secret not found error

Powershell - 如何在扩展文件属性中设置 "title"

azure - 大容量复制程序 (bcp) 实用程序 - 导入 CSV 时出错 - 证书链由不受信任的机构颁发

php - 带有 BOM 的 UTF16-LE 无法识别 csv 文件中的 sep

powershell - 使用多行命令参数批量启动 PowerShell

xml - 我可以使用 powershell 挂载 xml 文件吗

python - 使用 Pandas read_csv 读取 CSV 文件时出现 parsers.pyx 错误

javascript - 如何在函数内部使用引用嵌套函数内部参数的条件语句来返回 JavaScript 中的结果?

javascript - 嵌套 Async ForEach 循环

c# - foreach 和经典的 for 一样吗?