首页 > 解决方案 > 在 Powershell 中运行命令行命令

问题描述

我正在尝试运行一个命令行命令,它接受一些特定格式的参数。命令语法如下:

someCommand.exe arg1/arg2@arg3

可执行文件位于网络驱动器中,并且命令提示符不支持 UNC 路径,因此我尝试使用 PowerShell 来运行它。

到目前为止,从网络驱动器运行 someCommand.exe 是可行的。但是,如果我在参数中有一些特殊字符,命令会中断

例如,如果参数有分号,我会收到以下错误:

该术语不被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。

此外,当我用单引号或双引号封装参数时(例如,当参数有空格时),它也会破坏命令。

有什么方法可以将参数按原样发送到 PowerShell 中的命令?

标签: powershell

解决方案


用引号括起来。

例如:

someCommand.exe "$($args[0])/$($args[1])@$($args[2])"

推荐阅读