Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 使用键盘快捷键启动powershell脚本_Windows_Powershell_Keyboard Shortcuts - Fatal编程技术网

Windows 使用键盘快捷键启动powershell脚本

Windows 使用键盘快捷键启动powershell脚本,windows,powershell,keyboard-shortcuts,Windows,Powershell,Keyboard Shortcuts,我正在尝试使用键盘快捷键启动PowerShell脚本。我当前的脚本(非常简单,只是提示弹出“是/否”对话框)如下所示: $a = new-object -comobject wscript.shell $a.popup("Here's a test script", 0,"Title goes here", 4) 为了确保没有任何查找问题,我将脚本和脚本的快捷方式都放在桌面上,即: C:\users\me\desktop\ShortcutTest.ps1 C:\users\me\deskt

我正在尝试使用键盘快捷键启动PowerShell脚本。我当前的脚本(非常简单,只是提示弹出“是/否”对话框)如下所示:

$a = new-object -comobject wscript.shell 
$a.popup("Here's a test script", 0,"Title goes here", 4)
为了确保没有任何查找问题,我将脚本和脚本的快捷方式都放在桌面上,即:

  • C:\users\me\desktop\ShortcutTest.ps1
  • C:\users\me\desktop\ShortcutTest-shortcut.ps1
快捷方式在属性中具有以下设置:

Target: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File 'C:\Users\me\Desktop\ShortcutTest.ps1' Start in: C:\Users\me\Desktop Shortcut key: Ctrl + Alt + Q 目标:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe-ExecutionPolicy Bypass-文件“C:\Users\me\Desktop\ShortcutTest.ps1” 从以下位置开始:C:\Users\me\Desktop 快捷键:Ctrl+Alt+Q 问题是,当我按下快捷键时,它会成功启动PowerShell窗口,但会立即关闭实例

到目前为止的故障排除

  • 以管理员身份运行快捷方式,结果相同
  • 更改快捷方式的位置,结果相同
  • 更改实际脚本的位置,结果相同(它最初位于阻止脚本的服务器上)
  • 切换快捷方式的“起始”和“目标”部分,结果相同
  • 从快捷方式中的“Target”中删除-File参数会使PowerShell实例保持打开状态,因此我猜测脚本中缺少某种形式的参数设置,或者在从快捷方式调用它时
  • 将脚本内容更改为简单的“Write Host“Great success”仍然会立即关闭PowerShell实例,这进一步让我怀疑是“Target”(-File and-ExecutionPolicy)中使用的参数遗漏了什么
如果有人对我如何解决这个问题有任何建议,或者至少对进一步的故障排除有任何建议,我们将不胜感激

试试这个:

 "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -
     WindowStyle Hidden -ExecutionPolicy ByPass -File 
    'C:\Users\me\Desktop\ShortcutTest.ps1'

“当我按下快捷键时,它会成功启动Powershell窗口,但它会立即关闭实例。”您希望发生什么?它运行脚本,shell终止。您的意思是希望脚本运行,但在脚本完成后控制台窗口将保持不变?啊,很抱歉,不清楚:)脚本应该等待用户单击提示窗口中的一个框。手动运行脚本时,会提示用户“是/否”框,但使用快捷方式运行脚本时,不会显示提示。请尝试此操作,它适用于我拥有的另一个文件:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe-WindowsStyle Hidden-ExecutionPolicy ByPass-file'C:\Users\me\Desktop\ShortcutTest.ps1'我认为您需要使用双引号。e、 g.
-File“C:\Users\me\Desktop\ShortcutTest.ps1”
你们都是对的:)它需要双引号并使用-WindowStyle隐藏,非常感谢!