Powershell可在任何按键时中断等待
我有以下命令Powershell可在任何按键时中断等待,powershell,Powershell,我有以下命令 Get-Content -Path out.log -Wait 它读取文件并等待 我想打破任何按键的等待(或一个特定的键,没有关系) 可能吗 更新 Ctrl+C不是一个选项,因为我无法摆脱“终止批处理作业(Y/N)”消息。最接近的方法是生成另一个PowerShell进程,并在按下某个键时终止该进程。或者,用户可以在完成后简单地关闭新shell # Start Get-Content -Wait # Get the Process ID. $command = 'get-cont
Get-Content -Path out.log -Wait
它读取文件并等待
我想打破任何按键的等待(或一个特定的键,没有关系)
可能吗
更新
Ctrl+C不是一个选项,因为我无法摆脱“终止批处理作业(Y/N)”消息。最接近的方法是生成另一个PowerShell进程,并在按下某个键时终止该进程。或者,用户可以在完成后简单地关闭新shell
# Start Get-Content -Wait
# Get the Process ID.
$command = 'get-content -path "C:\Users\Michael\Desktop\Vim\temp.txt" -Wait'
$bytes = [System.Text.Encoding]::Unicode.GetBytes($command)
$encodedCommand = [Convert]::ToBase64String($bytes)
$psProcess = Start-Process -FilePath pwsh -ArgumentList "-EncodedCommand",$encodedCommand -PassThru
# Wait for input.
Write-Host "Press any key to to kill Get-Process -Wait."
$host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") | Out-Null
# Kill process.
$psProcess.Kill()
如果做不到这一点,可能会有其他方法来解决你的问题
你为什么问这个问题?或者这个问题的背景是什么
您仅显示Get Content-Wait
cmdlet。仅此一项不会生成终止批处理作业。还有什么代码正在运行
还有其他可用的尾巴或手表工具。这可能会有帮助。或者这个。如果您想访问Unix工具,可以在Windows上运行。Ctrl+C是一种非常通用的方法,可以中断正在运行的命令。@DougMaurer Ctrl+C的问题是,我无法摆脱用于批脚本的“终止批处理作业(Y/N)”消息,这不是您正在运行的。为什么要使用
-Wait
开关?CVan您不只是在Get内容之后暂停。@怀疑论者,因为文件out.log在Get内容发布后被另一个应用程序修改