Применяйте теги к командам Linux, чтобы легко извлекать их из истории
Мы не можем вспомнить команды Linux, которые не используем регулярно. Кроме того, немного сложно запомнить длинную команду со множеством флагов и аргументов. К счастью, существует несколько хороших инструментов, позволяющих легко получить команды, которые мы редко используем. Например, утилита Keep позволяет сохранять команды Linux и использовать их по требованию. Инструмент Bashpast CLI поможет добавить команды Linux в закладки для облегчения повторного вызова. Существует также еще один менеджер фрагментов командной строки под названием Pet, позволяющий сохранять важные, длинные и сложные фрагменты команд. Все вышеупомянутые инструменты могут помочь любому, кто с трудом запоминает команды Linux. Сегодня я научился новому трюку, позволяющему запоминать любые длинные команды Linux. В этом методе нам не нужно устанавливать какие-либо дополнительные приложения. Все, что нам нужно сделать, это просто применить теги к командам Linux, чтобы легко извлечь их из истории.
Тег — это не что иное, как комментарий. Комментарием может быть любое слово(а), напоминающее вам о команде Linux. После применения тегов к командам Linux нам даже не нужно вводить саму команду. Вместо этого мы просто вводим тег, легко извлекаем отмеченные команды из истории Bash и немедленно запускаем их. Позвольте мне показать вам несколько примеров.
Как применять теги к командам Linux
В качестве примера возьмем следующую однострочную команду Linux.
find . -size +10M -type f -print0 | xargs -0 ls -Ssh | sort -z
Для тех, кому интересно: приведенная выше команда найдет и выведет список файлов размером более 10 МБ в текущем каталоге и отсортирует их по размеру. Признаюсь, я не смог запомнить эту команду. Думаю, некоторые из вас тоже не могут вспомнить эту команду. Вот почему мы собираемся применить тег к таким командам.
Чтобы применить тег, просто введите команду и добавьте комментарий (т. е. тег) в конце команды, как показано ниже.
find . -size +10M -type f -print0 | xargs -0 ls -Ssh | sort -z #ListFilesBiggerThanXSize
Здесь #ListFilesBiggerThanXSize
— это имя тега для указанной выше команды. Убедитесь, что вы указали пробел между командой и именем тега. Кроме того, используйте имя тега как можно более простым, коротким и понятным, чтобы его можно было легко запомнить позже. В противном случае вам может понадобиться другой инструмент для вызова тегов.
Чтобы запустить его снова, просто используйте имя тега, как показано ниже.
!? #ListFilesBiggerThanXSize
Операторы !
(восклицательный знак) и ?
(вопросительный знак) используются для выборки и запуска команды, которая мы отметили ранее из истории BASH.
Вот вывод приведенной выше команды:
Применяйте теги к командам Linux, чтобы легко извлекать их из истории в Linux
Видеть? Вам не нужно вводить полную команду. Просто введите эти два чартера !?
, а затем имя тега.
Используйте разные и простые имена тегов для сложных и длинных команд. Если вы используете одно и то же имя тега для нескольких команд, будет запущена последняя помеченная команда.
Время от времени я использую этот простой трюк. Возможно, для всех вас это не эффективный метод, но мне он кажется проще, и мне достаточно легко вспомнить забытые команды Linux.
Знаете ли вы еще какие-нибудь советы и рекомендации? Пожалуйста, поделитесь ими в разделе комментариев ниже. Я буду проверять и обновлять это руководство соответствующим образом.
Рекомендуем прочитать:
- Как записывать все, что вы делаете в терминале
- Как добавить команды Linux в очередь и выполнять их одну за другой
- Asciinema – записывайте сеансы терминала и делитесь ими в Интернете
Обновление:
Как отметили многие читатели в разделе комментариев ниже, мы также можем использовать команду alias, чтобы облегчить и упростить эту задачу. Я знаю о команде псевдонима и о том, как и где ее использовать. Однако это не входит в задачу данного руководства. Я внес поправки в это руководство, так как многие пользователи предложили создавать псевдонимы для трудно запоминающихся команд.
Создайте псевдоним для команд, которые трудно запомнить, как показано ниже.
alias ListFilesBiggerThanXSize='find . -size +10M -type f -print0 | xargs -0 ls -Ssh | sort -z'
Теперь выполните следующую команду, чтобы просмотреть файлы размером более 10 МБ в текущем каталоге и отсортировать их по размеру:
ListFilesBiggerThanXSize
Это очень просто.