start-process npm -verb runas -args @("install", "-g", "coffee-script")
这是向子进程传递参数的最直接方法吗?它似乎很冗长!
答案1
嗯,PowerShell 本质上是冗长的,这是一件好事 - 它使代码更容易理解。
可以使用别名和短参数名称来缩短您的示例:
start npm -verb runas -a 'install', '-g', 'coffee-script'
如果不需要Runas
动词,它可以更短:
&'npm' 'install', '-g', 'coffee-script'
如果您使用的是 PowerShell v3,则有一项新的语言功能可以简化很多操作。您不必费尽心思使用转义和引号参数来避开 PowerShell 解析器,现在可以使用运算--%
符告诉 PowerShell 从该点开始停止解析直到行末:
&'npm' --% install -g coffee-script
参考: