我可以通过以下方案表达我的需求:编写一个接受字符串的函数作为本机命令运行.
这并不是一个想法:如果你正在与公司其他地方的其他命令行实用程序连接,那么它将为你提供逐字运行的命令.因为您不控制命令,所以您需要接受任何有效的命令作为输入.这些是我无法轻易克服的主要问题:
该命令可能执行生活在其中包含空格的路径中的程序:
$command = '"C:\Program Files\TheProg\Runit.exe" Hello';
Run Code Online (Sandbox Code Playgroud)该命令可能包含带空格的参数:
$command = 'echo "hello world!"';
Run Code Online (Sandbox Code Playgroud)该命令可能包含单蜱和双蜱:
$command = "echo `"it`'s`"";
Run Code Online (Sandbox Code Playgroud)有没有干净的方法来完成这个?我只能设计出奢华和丑陋的变通方法,但对于脚本语言,我觉得这应该是简单的.