全部替换为多个CSV - Powershell

时间:2015-03-10 02:07:06

标签: powershell csv

我正在尝试用空格“”来替换CSV文件中的主机名,但是我很难理解它是如何工作的,因为当我尝试调用$ env:computername时,它将它作为一个字符串而不是比下面的变量:

$var = $env:computername
[io.file]::readalltext("C:\test\test.csv").replace("$var"," ") | Out-File c:\test\test-new.csv -Encoding ascii –Force

我已对此进行了测试,可以看到该脚本正在CSV中查找字符串$ var而不是变量。最后,我想在一个包含不同主机名的CSV文件目录中运行它,并将新编辑的文件也输出到一个单独的位置。

1 个答案:

答案 0 :(得分:0)

我删除了引号并测试了此脚本,它适用于我的测试csv文件

引号应该是扩展变量,但如果不是,你可以简单地直接传递环境变量:

[io.file]::readalltext("C:\test\test.csv").replace($env:ComputerName,"") | Out-File c:\test\test-new.csv -Encoding ascii –Force