运行PowerShell时" - <"是什么意思?

Mik*_*liy 11 powershell teamcity

推荐的运行脚本的方法是

powershell.exe -NonInteractive -Command " & some.ps1 "
Run Code Online (Sandbox Code Playgroud)

但是,例如TeamCity PowerShell runner使用:

powershell.exe -NonInteractive -Command - < some.ps1
Run Code Online (Sandbox Code Playgroud)

我不知道" - <"是什么意思,也无法找到有关主题的任何信息.有帮助吗?

Joe*_*ant 16

因为powershell.exe是通过Windows shell调用的,所以它与正常命令提示符(cmd.exe)相同.在那种情况下,<将文件管道传输到stdin上一个命令的标准输入().powershell.exe状态的帮助,如果值的-Command简单-,则从标准输入读取命令文本.

这里有一个更自我记录演示<cmd.exe:

processSomeFile.exe outputFileName.ext < intputFile.ext
Run Code Online (Sandbox Code Playgroud)

  • @Roman Kuzmin - 执行策略不是作为安全功能,而是为了防止意外运行您不想要的脚本.管理员对启动脚本/命令的帐户应用的任何安全限制都将适用. (3认同)