Назад | Перейти на главную страницу

Добавьте «sudo» в последнюю командную строку в bash

Я запускаю команду и понимаю, что ее нужно было запустить с sudo.

В zsh у меня есть функция, чтобы я мог нажать ^ x ^ x, и он возьмет предыдущую строку из истории и добавит sudo к нему, чтобы я мог запустить его снова.

Можно ли это сделать с помощью bash?

Как упоминал Джеральд Шнайдер, это дубликат, который существует в Stack Overflow, но, поскольку он не существует в Serverfault, и он не позволяет мне отмечать его как дубликат, я просто помещу здесь ответ.

Из вопроса jm666 Вот


Ты можешь написать:

sudo !!

(Видеть §9.3 «Расширение истории» в Справочное руководство по Bash.)


Большинство реализаций bash, которые я использовал, позволяют перемещаться по истории команд с помощью клавиш со стрелками вверх и вниз.

Таким образом, помимо решения @ trueCamelType, можно также использовать:

<up-arrow><home>sudo<space><enter>

В любом случае, восемь персонажей. :)