我使用的是64位的Windows 7操作系统。我发现cmd.exe和powershell无法保存历史命令,即当我退出shell时会丢失我的命令历史记录。
是否有工具可以帮助cmd.exe或powershell记住历史记录呢?我尝试了使用console 2,它体积小、拥有选项卡界面,但console 2也无法记住历史记录。也许还有其他前端可以实现这一功能。
Register-EngineEvent PowerShell.Exiting {
Get-History -Count 32767 | Group CommandLine |
Foreach {$_.Group[0]} | Export-CliXml "$home\pshist.xml" } -SupportEvent
Import-CliXml "$home\pshist.xml" | Add-History
导出和导入命令历史记录的相关命令是Get-History
和Add-History
。将以下内容添加到您的PowerShell配置文件中:
Register-EngineEvent PowerShell.Exiting {
Get-History | Export-Csv $HOME\pshist.csv
} | Out-Null
if (Test-Path $Home\pshist.csv) {
Import-Csv $HOME\pshist.csv | Add-History
}