Отредактируйте команду из истории PowerShell, прежде чем она будет выполнена - PullRequest
1 голос
/ 16 января 2020

Если я использую команду из истории powershell, такую ​​как invoke-history -id 5, она будет выполнена как есть.
Есть ли способ отредактировать команду перед выполнением?
Я нашел только параметр -confirm, но он покажет мне только команду перед выполнением, но я не нашел возможности ее отредактировать.

Спасибо

1 Ответ

1 голос
/ 16 января 2020

Я искал способ сделать это, вставив вывод (Get-History -Id 5).CommandLine во входной буфер, но я думаю, что это неправильный способ go по этому поводу. Вы можете выполнить обратный поиск вашей истории команд, нажав ^R (CTRL + R) и напечатав что-нибудь из своей истории. Команда разрешит самую последнюю команду, соответствующую вашему вводу, но вы можете либо продолжить ввод, либо снова нажать ^R для разрешения следующей самой последней команды.

Это работает так же, как поиск в обратном направлении в Linux снаряды, но я объясню ниже для непосвященных.


Если бы я вчера запустил следующее:

ping www.google.com

И решил, что хочу запустить это снова сегодня, я бы введите следующие нажатия клавиш:

^R ping

, который вставит самую последнюю команду, содержащую ping. Если ping www.google.com не самое последнее совпадение, нажмите ^R еще раз, пока не получите нужную предыдущую команду.


Это менее подходит в сценарии автоматизации, но полезно при работе с терминал в интерактивном режиме. Если вам нужно программно преобразовать предыдущую команду, вы можете получить вывод (Get-History -Id 5).CommandLine и соответствующим образом преобразовать полученную строку перед выполнением с оператором вызова &.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...