使用参数运行 powershell 并隐藏标志

Kyl*_*Mit 2 powershell autohotkey windows-10

根据AHK 文档Run,它接受以下语法:

Run, Target , WorkingDir, Options, OutputVarPID
Run Code Online (Sandbox Code Playgroud)

其中Options可以包括:

  • Max:启动最大化
  • Min:启动最小化
  • Hide:隐藏启动(不能与以上任一组合使用)

我有绑定到 powershell 脚本的快捷方式,如下所示:

^4::
Run, pwsh -WindowStyle Hidden -Command "Stop-ElgatoKeyLight -Host 192.168.1"
Return
Run Code Online (Sandbox Code Playgroud)

但是,正如Powershell -WindowStyle Hidden still shown a window Brief中所述,这并不能阻止控制台启动时短暂闪烁

添加时我似乎不太能正确理解语法hide。当我尝试这个时:

Run, pwsh, -WindowStyle Hidden -Command "Stop-ElgatoKeyLight -Host 192.168.1", Hide
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

错误信息

:如何hide在运行命令中使用该标志,同时仍将参数传递到 powershell 中?

0x4*_*64e 6

你想运行:

Run, pwsh -Command "Stop-ElgatoKeyLight -Host 192.168.1", , Hide
Run Code Online (Sandbox Code Playgroud)

或者使用现代表达式语法

Run, % "pwsh -Command ""Stop-ElgatoKeyLight -Host 192.168.1""", , Hide
Run Code Online (Sandbox Code Playgroud)

您的代码当前编写的方式:

Run, pwsh, -WindowStyle Hidden -Command "Stop-ElgatoKeyLight -Host 192.168.1", Hide
Run Code Online (Sandbox Code Playgroud)

正如您所指出的,参数是Target, WorkingDir, Options, OutputVarPID,因此您尝试pwsh在目录中启动-WindowStyle Hidden -Command "Stop-ElgatoKeyLight -Host 192.168.1"