BAT文件,可选择使用向上箭头重复命令



我正在排除一个使用powercfg -requests命令使Windows 10 PC保持清醒的设备的问题。我有一个包含以下内容的BAT文件,因此它可以通过快捷方式以admin属性运行来快速运行:

cmd /k powercfg -requests

这工作,但除了保持窗口打开,我希望能够继续发送powercfg -requests通过点击箭头向上/输入当需要时,通常会发生如果我打开命令提示符并手动输入它。

我在这里搜索了很多,除了让它自动重复,除了在 BAT文件中发送箭头键之外,我没有发现任何其他内容。

我确实看到了一些暗示可以打印命令的东西,所以它在提示符处输入在命令执行之后,这也可以,但是运气不太好。

这可能吗?

对不起,没有简单的方法…

如此:

@if (@CodeSection == @Batch) @then
@echo off
start "" /B cmd /K
timeout /T 1
CScript //nologo //E:JScript "%~F0" "powercfg -requests{ENTER}"
goto :EOF
@end
WScript.CreateObject("WScript.Shell").SendKeys(WScript.Arguments(0));

有关所使用方法的进一步说明,请参阅答案

请使用PowerShell。你可以右键点击桌面>新建快捷方式并粘贴,然后保存

powershell -NoExit -Command "Add-Content -Path (Get-PSReadlineOption).HistorySavePath 'powercfg -requests'; Invoke-Expression 'powercfg -requests'"

最好创建一个新的快捷方式,因为您可以将其设置为始终以admin身份运行,尽管仍然可以将其放在*.bat/*中。ps1文件

你也可以这样缩写

powershell -NoE -C "$c = 'powercfg -requests'; ac (Get-PSReadlineOption).HistorySavePath $c; iex $c"

PowerShell比批处理要灵活和强大得多。它还有一个持久历史所以使用PowerShell要方便得多。您甚至可能不需要这个,只需按Ctrl+R就可以在历史中搜索powercfg命令,就像在bash/zsh

中一样。

相关内容

  • 没有找到相关文章

最新更新