我正在努力将旧的批量文件记录脚本转换为Powershell。创建数据不是一个主要问题,但我在最后一步遇到了问题。旧批处理文件中的最后一步将丑陋的CSV转换为更漂亮且易于使用的CSV。这是使用旧的AWK脚本和gawk命令完成的。我很满意这一步,但我希望它能在Powershell脚本中执行。
命令看起来像这样:
<gawk.exe> -f <path>\PrepareReport.awk <original.csv> >> <final.csv>
我尝试过不同的方法来调用gawk和参数。 Invoke-Expression,Invoke-Command等。似乎无法正常运行此命令。任何见解或想法将不胜感激。
谢谢!
编辑:在所有评论之后,我找到了&amp;是实现这一目标的选择。 Start-Process cmdlet导致致命错误。但有一件奇怪的事情仍在发生。由于某种原因,生成的CSV文件无法在Excel中正常显示。即使生成的文件看起来完全正常,Excel也不会使用相应的逗号分隔符显示它。有什么想法吗?答案 0 :(得分:0)
您可以随时使用Start-Process。
Start-Process -NoNewWindow -Wait -PassThru -FilePath <gawk.exe> -ArgumentList "-f <path>\PrepareReport.awk <original.csv> >> <final.csv>"
它有点罗嗦,但非常可定制且非常灵活。