Windows PowerShell命令历史用法详解

(一)获取所有包含“history”关键字的cmdlet

使用PS C:\< Get-Command -Name *history* -CommandType cmdlet,结果如图。

clipboard

(二)通过上图查找到history相关的命令后,我们可以再使用get-history来获取命令的历史记录,如图。

clipboard[1]

(三)可以通过使用Get-Alias -Definition Get-History的方式来获取该cmdlet的别名,如图。

clipboard[2]

(四)如何通过查看到的命令历史记录信息来运行历史命令呢?

例如上面查到的命令记录有Get-ChildItem,这个命令的历史记录的ID号是3,那么我们可以通过使用PS C:\< Invoke-History -Id 3来运行这个历史命令,如图。

clipboard[3]

(五)如何查看特定的命令历史记录呢?

可以通过使用Get-History ID号的形式,如图,获取ID号为3、4的命令历史记录。

clipboard[4]

但是不能使用 Invoke-History -Id 3,4的方式来运行,否则会报错,如图。

clipboard[5]

同样的,

我们可以使用Get-History 3 | Invoke-History的方式去执行历史命令,如图。

clipboard[6]

但是,

不能使用Get-History 3,4 | Invoke-History的方式去执行命令,否则会报错,如图。

clipboard[7]

通过上图的报错可以看出,管道不能同时接受多个项目的输入,我们可以添加foreach循环语句来解决该问题,如图。

使用命令:

Get-History -Id 3, 4 | foreach { Invoke-History -id $_.ID}

命令成功执行,如图。

clipboard[8]

Tip:http://blogs.technet.com/b/heyscriptingguy/archive/2015/03/03/avoid-scripting-use-powershell-command-history.aspx

==============================================================================

本文出自 “曾垂鑫的技术专栏” 博客,谢绝转载!

你可能感兴趣的:(windows,powershell,get-history)