PowerShell中如何将字符串转换为可执行命令?
PowerShell字符串转可执行命令的解决方法
要把拼接好的命令字符串转换成PowerShell可执行的命令,同时修正通配符以匹配你期望的dir *yarn,可以用以下几种方法:
方法一:使用
Invoke-Expression直接执行字符串命令
这种方式会直接解析并执行拼接后的命令字符串,代码如下:$cmd = "dir" $args = "*yarn" # 调整通配符为你需要的格式 $command = "$cmd $args" Invoke-Expression $command # 执行命令注意:如果命令字符串来自不可信来源,这种方法存在安全风险,谨慎使用。
方法二:使用调用操作符
&(推荐,更安全)
不需要拼接字符串,直接将命令和参数分开传递,避免解析问题,代码示例:$cmd = "dir" $args = "*yarn" & $cmd $args # 直接调用命令并传入参数这种方式是PowerShell中执行命令的标准安全做法,能避免很多字符串解析的坑。
方法三:启动新PowerShell进程执行命令
如果你需要在独立的PowerShell环境中执行命令,可以用这种方式:$cmd = "dir" $args = "*yarn" $command = "$cmd $args" & powershell -Command $command
内容的提问来源于stack exchange,提问作者dylanh724
相关产品推荐
相关产品推荐

