闽人
1利用快捷键查看
打开PowerShell窗口后(无论之前是否关闭过)按下键盘中的“↑”和“↓”键,即可查看到之前输入的命令。比如按3次“↑”键可以查看到前3次输入的命令,这时再按下“↓”键则可以回退到前2次输入的命令(图1)。
如果执行过的命令很多已经记不住顺序,那么可以在P owe r S h e l l窗口中按下“Ctrl+R”快捷键,此时在窗口的下方会出现“bck-i-search:”字样,在此输入命令的关键字,比如Dism,回车后即可显示最近一次执行的与Dism相关的命令(图2)。
2利用命令行查看
利用快捷键只能查看到最近一条命令,如果想查看本次运行PowerShell后执行的所有命令(确保PowerShell窗口没有被关闭),只需在窗口中输入“Get-Histor y | Format-List-Proper ty *”命令并回车即可(每输入一行命令后均需回车确认,下同)(图3)。
3通过历史文件查看
如果已关闭当前窗口(如电脑重启了),或者过几天才想起来要查看历史记录,那么在文件资源管理器的地址栏中输入“%userprofile%\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_histor y.txt”并回车,即可通过记事本程序打开历史记录文件查看(图4)。
很多朋友平时都会使用多台电脑,比如在家里的电脑(假设为电脑A)中执行各种命令行进行某些测试,现在需要将这些命令记录导入到公司的电脑(假设为电脑B)中继续使用。
在电脑A中执行完命令后不要关闭PowerShell窗口,继续输入“Get-Histor y | Expor t-Clixml-Path d:\mypowershell.xml”命令,可以将本次运行Powe r S h e l l后执行的命令记录导出到“D:\Mypowershell.xml”文件中(图5)。
接着将该文件通过QQ等传输到电脑B中,假设保存在“D:\”根目录下。然后在电脑B中启动PowerShell窗口,输入“Add-History -Input Object(Impor t-Clixml -Path d:\mypowershell.xml)”命令,即可将上述导出的记录导入到本机中。
如果想将电脑A中运行的所有历史命令记录(而不只是本次运行Power Shell后保存的记录)导入到电脑B中,那么在电脑A中打开“C:\Users\ 當前用户\ AppData\Roaming\Microsof t\Windows\PowerShell\PSReadLine\”,将其中的“ConsoleHost_history.txt”文件复制到电脑B中对应的文件夹中即可(图6)。
通过上述的方法,任何人都可以查看到执行过的命令。假如在PowerShell中执行的命令涉及一些敏感信息,如登录凭据、账号等,觉得不安全,我们可以手动将其删除。
如果只有最后执行的一条命令涉及了隐私数据,那么执行“Clear-History-count1-newest”命令即可。如果想删除本次运行PowerShell后执行的所有命令,那么执行“Clear-History-CommandLine*set-ad*”命令就可以了(图7)。
如果是在公用电脑上使用PowerShell,最好完全删除所有的命令记录,执行“Remove-Item(Get-PSReadlineOption).HistorySavePath”命令即可。另外,还可以同时执行“Set-PSReadlineOption-HistorySaveStyleSaveNothing”命令,它会禁止PowerShell将历史记录保存在“ConsoleHost_history.txt”文件中,这样可以更好地保证操作的安全性(图8)。