Как выполнить последнюю команду, имя которой начинается с букв, а не цифр? - PullRequest
0 голосов
/ 03 февраля 2019

Повторно выполнить последнюю команду, имя которой начинается с 'c'.Я хочу выполнить мою команду истории подробно, которая начинается с c, то есть последняя команда, которая начинается с c.Во-первых, я хочу получить эту команду и выполнить ее.

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

Вы можете получить последние использованные команды, которые начинаются с буквы c, выполнив эту команду: history | awk '{ print $2 }' | grep '^c'.

Если вы хотите напрямую запустить последнюю команду, начинающуюся с 'c' (которая, я думаю,опасно).Вы можете запустить эти команды или сохранить как bash-скрипт:

a=(`history | awk '{ print $2 }' | grep '^c'`)
num_cmds=${#a[@]}
last_cmd=${a[num_cmds-1]}
$last_cmd
0 голосов
/ 03 февраля 2019

Я бы посоветовал вам прочитать о CTLR-R функциях bash предложений.

Если вы наберете CTRL-R и c, то последняя команда, начинающаяся таким образом, предлагается, отображается и может бытьисполнен снова.Вы также можете изменить его так, как если бы вы его полностью набрали.

Функция предлагает «живой поиск», поэтому вы можете вводить дополнительные префиксные символы и, таким образом, ограничивать результаты поиска, которые вы получаете.Каждое повторение CTRL-R предлагает команду next в истории оболочки, которая соответствует текущему шаблону поиска.

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