【发布时间】:2019-03-23 17:21:55
【问题描述】:
我想用 PowerShell 脚本调用一个 EXE 工具(基于 Perl)。
基本上以下命令在 CMD 中调用该工具。该工具处理一些文件并创建一个输出文件:
tool.exe [OPTIONS] > out.txt
该工具还在创建此输出文件后打印一些“结果”。 现在,如何将这个命令放在 PowerShell 环境中?
我尝试了不同的解决方案,但 PowerShell 本身总是使用“> out.txt”。该工具没有得到此命令,将无法正确创建文件:
& tool.exe '> out.txt'
或用“”:
& tool.exe "> out.txt"
我能做什么?
编辑:
tool.exe:扫描了 1 个目录 在 ..\Tool_new.ps1:150 Zeichen:1 + & 工具.exe > out.kml + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:未指定:(扫描的 1 个目录:String)[],RemoteException + FullyQualifiedErrorId : NativeCommandError 22 个文件失败条件 读取 34 个图像文件“1个目录扫描”+“22个文件失败条件”+“34个图像文件读取”是打印的结果。
【问题讨论】:
-
删除你的引号。
-
谢谢!但是会有下一个问题:该工具在创建文件后会产生一些结果输出。现在 Powershell 将这些行解释为命令 --> 错误 - 你有什么想法吗?
-
没有看到您的可执行文件在做什么,很难说出正在发生的事情。 powershell 中可执行文件的所有输出都以字符串数组的形式输出。
-
EXE 写了一些注释,比如:“10 个文件已处理,10 个文件被跳过”
-
产生了什么错误?请将它们添加到您的问题中。
标签: powershell cmd command exe