- PVSM.RU - https://www.pvsm.ru -

Не используйте "!!" в баше

Каждый раз, когда неофит открывает для себя возможности баша и решает про это написать, он обязательно всем рассказывает про удобный метод «повторить команду» с использованием "!!".

Типа так:

$ touch /test
touch: cannot touch ‘/test’: Permission denied
$ sudo !!
sudo touch /test

Типа, хэппи-энд.

Я никогда такого не использовал, но не задумывался, «почему». Просто мне не нравилась эта идея.

А сейчас я придумал простой контрпример, который у любого хорошего человека отобъёт любое желание играться с восклицательным знаком в любой форме.

echo NO ROOT PLEASE
 echo do it with sudo
sudo !!

(просто скопипастите это пример в шелл)

Пробел перед командой означает «не добавляй меня в хистори». И восклицательные знаки этому подчиняются.

Вы всегда уверены, что у вас случайно нет пробела в начале командной строки? ∎

Автор: amarao

Источник [1]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/sudo/77743

Ссылки в тексте:

[1] Источник: http://habrahabr.ru/post/246375/