我想执行电源外壳静默命令,不会出现蓝屏。
我怎样才能做到这一点电源外壳命令?
我试过了……
PowerShell.exe -windowstyle hidden
但它不起作用——命令执行了,但蓝屏仍然出现。
答案1
在提示符下静默运行 PowerShell 命令
就像声明的那样。 。 。
-WindowStyle
设置会话的窗口样式。有效值为正常、最小化、最大化和隐藏。
-命令
执行指定的命令(和任何参数),就像在 PowerShell 命令提示符下键入一样,然后退出,除非指定了 NoExit 参数。实际上,之后的任何文本
-Command
都会作为单个命令行发送到 PowerShell
句法
powershell -windowstyle hidden -command <PowerShell Command String>
可验证的例子
1. 命令提示符(cmd)
powershell -windowstyle hidden -command get-childitem -path c:\ ^| out-file "C:\Folder\Log\log.txt"
笔记: 使用 cmd 时,[
|
] 管道符号需要用 [^
] 插入符号进行转义,因此为“^|
”。
2. PowerShell 提示符
powershell -windowstyle hidden -command get-childitem -path c:\ | out-file "C:\Folder\Log\log.txt"
笔记: 运行后,打开日志.txt验证其内容,因为
out-file
将其引导至输出。
更多资源
答案2
不确定我在哪里找到这些行,但是有一些很好的功能可以显示和隐藏控制台。
显示/隐藏 Powershell 窗口
Function Show-Console {
$consolePtr = [Console.Window]::GetConsoleWindow()
[Console.Window]::ShowWindow($consolePtr, 5)
}
Function Hide-Console {
$consolePtr = [Console.Window]::GetConsoleWindow()
[Console.Window]::ShowWindow($consolePtr, 0)
}
当我想在后台隐藏 ps 时,我将它用于我的 gui 应用程序:
地图:显示/隐藏 Powershell Windows 复选框
$cb_PSCheckbox.Add_Checked({Show-Console})
$cb_PSCheckbox.Add_UnChecked({Hide-Console})
答案3
另一种完全隐藏(甚至没有闪现)运行 PowerShell 脚本的方法是使用这个小运行隐藏可执行文件。