如何从历史命令执行一个特定命令?

问题描述:

例子:如何从历史命令执行一个特定命令?

PS C:\Users\user01\Desktop\jogoForcaMVCSpring> history 
    Id CommandLine 
    -- ----------- 
    1 history 
    2 ls 
    3 cd .. 
    4 cd .\jogoForcaMVCSpring 
PS C:\Users\user01\Desktop\jogoForcaMVCSpring> 

我如何与编号2执行的命令是什么?

也许像...

PS C:\Users\user01\Desktop\jogoForcaMVCSpring> execute history command -id 2

明白了:

调用历史-id 2

看到 “获取帮助史” 后,我发现一个“相关链接”:invoke-history

PS C:\Users\user01\Desktop\jogoForcaMVCSpring> history 
    Id CommandLine 
    -- ----------- 
    1 history 
    2 ls 
    3 cd .. 
    4 cd .\jogoForcaMVCSpring 
    5 history 
    6 get-help history 
    7 get-help invoke-history -examples 
PS C:\Users\user01\Desktop\jogoForcaMVCSpring> invoke-history -id 2 
ls 
Directory: C:\Users\user01\Desktop\jogoForcaMVCSpring 
Mode    LastWriteTime  Length Name 
----    -------------  ------ ---- 
d----  22/09/2016  13:56   src 
d----  23/09/2016  14:59   target 
-a---  22/09/2016  15:14   7 .gitignore 
-a---  19/09/2016  15:16  6308 pom.xml 
-a---  22/09/2016  16:08  308 README.txt 
PS C:\Users\user01\Desktop\jogoForcaMVCSpring> 
+0

我不知道这是否是唯一的,或者即使这是正确的原因,但似乎有效。我正在等待其他意见。 –

+0

这是一个正确的方法。您还可以通过管道将Get-History中的内容传递给Invoke-History。例如'Get-History -ID 2 |调用-History' – BenH