自动检测按键并触发Powershell脚本运行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动检测按键并触发Powershell脚本运行相关的知识,希望对你有一定的参考价值。

我想要实现某种功能,这样一来,当我按Enter键或键盘上的F3键时,它应该在后台运行Powershell脚本。按下按钮触发的事件必须通过命令提示符命令或后台批处理文件从后台进程完成。 (需要注意的是:-这是一个USB键盘,已与上面配置的单个按钮相连(例如:-Enter)

答案

我认为这可能有效:

@echo off
:begin
choice /C [YOURKEYHERE] /N /M "[YOUR TEXT HERE]"
if %ERRORLEVEL%==1 start [PATHTOYOURSCRIPT.HERE]
goto start

例如,

@echo off
:begin
choice /C N /N
if %ERRORLEVEL%==1 start notepad.exe
goto begin

这将首先等待输入。如果按下不是N的任何键,则不会发生任何事情。按下N后,错误级别设置为1。然后,第二行检查错误级别是否为1,如果是,则Notepad.exe将打开。最后一部分只是将脚本设置为不断循环。如果您想要一个以上的键,可以使用这样的脚本,

@echo off
:begin
choice /C NC /N
if %ERRORLEVEL%==2 start Calc.exe
if %ERRORLEVEL%==1 start Notepad.exe
goto begin

现在,如果按第一个键(N),则将错误级别设置为1,而如果按第二个键(C),则将错误级别设置为2 ect。您可以根据需要拥有任意数量的键,但是只需确保错误级别的脚本按降序排列即可(例如,“ if%ERRORLEVEL%== 3”,“ if%ERRORLEVEL%== 2”,“ if% ERRORLEVEL%== 1“)

关于“后台”部分,可以使用名为Advanced BAT to EXE Converter的程序将BAT文件转换为EXE文件。转换时您拥有的选项之一是“在后台运行”。这仅适用于Windows 2000,XP,Vista,7、8、8.1和10以及所有Windows Server OS。唯一的缺点是,一旦将脚本转换为EXE文件,除非您购买Advanced BAT to EXE Converter PRO,否则只能在您自己的计算机上使用。希望我能帮上忙!

以上是关于自动检测按键并触发Powershell脚本运行的主要内容,如果未能解决你的问题,请参考以下文章

在Powershell脚本中安全的使用密码信息

将当前时间分配给powershell变量

Powershell FileSystemWatcher 脚本在一些新文件上触发两次

执行 powershell 语句后检测错误

自动化批处理文件和PowerShell脚本执行

Visual Studio下运行PowerShell脚本自动更新项目里AssemblyInfo.cs文件的版本(自增小版本号)并发布到Nuget服务器上