Запустіть останню виконану команду від імені root за допомогою sudo !!
Зміст:
Чи намагалися ви коли-небудь запустити інструмент командного рядка, щоб виявити, що у вас немає потрібних привілеїв для його використання? Або, можливо, самій команді для запуску взагалі потрібен доступ root? Зазвичай ви відчуваєте це, коли в терміналі з’являється повідомлення про помилку типу «дозвіл заборонено». Замість того, щоб знову ввести весь рядок команди або натиснути стрілку вгору та перемістити курсор перед командою за допомогою sudo, ви можете використати дивовижний трюк, який повторно запускає останню виконану команду за допомогою привілеї sudoНайкраще те, що цей чудовий трюк із повторним запуском останньої команди як root працює в MacOS / Mac OS X і Linux.
Добре, судячи лише за заголовком, ви, ймовірно, думаєте, що це просто гіпербола через знаки оклику, але я присягаюся, що я не просто в захваті від команди sudo (хоча ця команда це справді чудово!)… ні, натомість знаки оклику насправді є частиною використання інструмента sudo у цьому відношенні.
Як повторно запустити останню виконану команду від імені користувача root
Якщо ви хочете швидко запустити останню виконану команду, але від імені суперкористувача root, просто введіть наступне:
sudo !!
Так, це «sudo», після якого йде пробіл і два знаки оклику.
Це миттєво запустить попередню команду, але з префіксом sudo , що зазвичай означає, що вам потрібно буде ввести пароль адміністратора, щоб завершити послідовність.
Прикладом цього може бути ситуація, коли ви намагаєтеся редагувати файл hosts або інший системний файл, для якого вам потрібні системні привілеї. Замість того, щоб повторно вводити весь командний рядок із sudo, просто введіть sudo !! і попередня команда (!!) буде виконана під sudo.
Наприклад, скажімо, ви намагалися змінити файл хосту користувача:
nano /etc/hosts
Але ви не можете зберегти або відредагувати файл через відсутність відповідних облікових даних користувача, чи не так? Нічого страшного, замість того, щоб знову вводити повну послідовність команд «sudo nano /etc/hosts», просто введіть наступне:
sudo !!
Це бере останню команду (у цьому випадку nano /etc/hosts) і автоматично додає до неї префікс sudo, перетворюючись на повний «sudo nano /etc/hosts»
Це працює буквально з усіма інструментами командного рядка та виконанням команд, тож спробуйте, це чудово.
Як згадувалося раніше, цей трюк працює в командному рядку MacOS і Linux, а також, ймовірно, багатьох інших операційних систем на основі Unix.