这是我不断发现自己需要的东西。
例如,我通过Set-PSReadLineKeyHandler定义了一个“宏”:
Set-PSReadLineKeyHandler -Chord F3 -ScriptBlock {
[Microsoft.PowerShell.PSConsoleReadLine]::RevertLine() #clear the current buffer first
[Microsoft.PowerShell.PSConsoleReadLine]::Insert('Clear-Host') #Insert Clear-Host
[Microsoft.PowerShell.PSConsoleReadLine]::AcceptLine() #Execute buffer
}
它本质上是一种非常快速的清除终端的方法。出现的问题是,如果我按下Up
箭头,Clear-Host
将被拉起,这就是F3
宏输入的内容。
我需要像[Microsoft.PowerShell.PSConsoleReadLine]::DontInsertIntoHistory()
这样的东西,这样我就可以排除Clear-host
登录到历史记录中。
谢谢!
1条答案
按热度按时间5f0d552i1#
你可以直接调用
Clear-Host
,这样就不会出现在命令历史中:注:
[Microsoft.PowerShell.PSConsoleReadLine]::Insert('')
来使 prompt string 重新出现。