![Повторно выполнить команду через конвейер, соответствующий определенному шаблону](https://rvso.com/image/170655/%D0%9F%D0%BE%D0%B2%D1%82%D0%BE%D1%80%D0%BD%D0%BE%20%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D1%8C%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%83%20%D1%87%D0%B5%D1%80%D0%B5%D0%B7%20%D0%BA%D0%BE%D0%BD%D0%B2%D0%B5%D0%B9%D0%B5%D1%80%2C%20%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%89%D0%B8%D0%B9%20%D0%BE%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%BC%D1%83%20%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D1%83.png)
Допустим, я хотел бы вызвать и выполнить команду (например)
wget https://go.skype.com/skypeforlinux-64.deb
что я уже использовал день назад. Я использовал инструкцию
history | grep skype
какой пример вывода
1584 sudo apt-get purge skypeforlinux
1585 sudo snap install skype
1824 cd skype/
1829 wget https://go.skype.com/skypeforlinux-64.deb
2001 history | grep skype
Как расширить конвейер, чтобы запустить процесс напрямую 1829
(без написания новой команды !1829
)?
решение1
Вместо «grep» истории можно просто использовать обратный поиск.
Если нажать [ctrl]
+ [r]
(обе клавиши одновременно), вы выполните поиск в обратном направлении по истории команд.
Так что если вы хотите выполнить повторно (например)
wget https://go.skype.com/skypeforlinux-64.deb
вы можете просто нажать [ctrl]
+ [r]
, ввести skype
команду, и тогда она уже отобразится.
Если это была не последняя команда, вы можете просмотреть историю, нажав [ctrl]
+ [r]
еще раз.