相关疑难解决方法(0)

如何从字符串中执行任意本机命令?

我可以通过以下方案表达我的需求:编写一个接受字符串的函数作为本机命令运行.

这并不是一个想法:如果你正在与公司其他地方的其他命令行实用程序连接,那么它将为你提供逐字运行的命令.因为您不控制命令,所以您需要接受任何有效的命令作为输入.这些是我无法轻易克服的主要问题:

  1. 该命令可能执行生活在其中包含空格的路径中的程序:

    $command = '"C:\Program Files\TheProg\Runit.exe" Hello';
    
    Run Code Online (Sandbox Code Playgroud)
  2. 该命令可能包含带空格的参数:

    $command = 'echo "hello world!"';
    
    Run Code Online (Sandbox Code Playgroud)
  3. 该命令可能包含单蜱和双蜱:

    $command = "echo `"it`'s`"";
    
    Run Code Online (Sandbox Code Playgroud)

没有干净的方法来完成这个?我只能设计出奢华和丑陋的变通方法,但对于脚本语言,我觉得这应该是简单的.

powershell scripting

195
推荐指数
3
解决办法
22万
查看次数

标签 统计

powershell ×1

scripting ×1