Powershell:如何从文件内容填充 -ArgumentList
Powershell: How to populate -ArgumentList from contents of a file
我正在尝试 运行 "gvim" 有很多参数,我想用 powershell 中的命令填充它的参数,如下所示:
Get-ChildItem -Path .\Tools\tests\program -Filter *test.xml-Recurse | Format-Wide -Property FullName -Column 1 > out.txt
我已经把结果放在 out.txt 但是我如何 运行 gvim 与 out.txt 的内容?
Start-Process gvim.exe -ArgumentList ????
如果我在参数列表中传递 out.txt 它会打开它,但我想要的是它的内容作为参数而不是实际文件本身传递。
Get-Content
将 return 一个字符串数组(文件中每行一个字符串)。您可以像这样提供参数:
Start-Process gvim.exe -ArgumentList @(Get-Content .\out.txt |Where{$_.Trim()})
(Where
添加以删除从文件中读取的空行)。
或者您可以完全跳过该文件:
Start-Process gvim.exe -ArgumentList @(Get-ChildItem -Path .\Tools\tests\program -Filter *test.xml -Recurse | Select -Expand FullName)
我正在尝试 运行 "gvim" 有很多参数,我想用 powershell 中的命令填充它的参数,如下所示:
Get-ChildItem -Path .\Tools\tests\program -Filter *test.xml-Recurse | Format-Wide -Property FullName -Column 1 > out.txt
我已经把结果放在 out.txt 但是我如何 运行 gvim 与 out.txt 的内容?
Start-Process gvim.exe -ArgumentList ????
如果我在参数列表中传递 out.txt 它会打开它,但我想要的是它的内容作为参数而不是实际文件本身传递。
Get-Content
将 return 一个字符串数组(文件中每行一个字符串)。您可以像这样提供参数:
Start-Process gvim.exe -ArgumentList @(Get-Content .\out.txt |Where{$_.Trim()})
(Where
添加以删除从文件中读取的空行)。
或者您可以完全跳过该文件:
Start-Process gvim.exe -ArgumentList @(Get-ChildItem -Path .\Tools\tests\program -Filter *test.xml -Recurse | Select -Expand FullName)