Команды Linux часто известны тем, что они слишком длинные, а чрезмерная длина приводит к увеличению сложности и проблем с пониманием. Но всегда есть способ сократить ваши команды Linux и превратить их в аккуратные, лаконичные строки, которые все любят.
Вот четыре способа сократить длину ваших команд, чтобы вы могли меньше печатать и больше делать в терминале Linux.
1. Замените абсолютные пути относительными путями
Любой, кто знаком с основами передачи аргументов программам Linux, знает, что в Linux есть два разных выражения пути: относительный и абсолютный пути.
Помимо того, что выражения относительного пути приятны на вид, они имеют еще одно преимущество, а именно то, что они могут делать больше с меньшим количеством символов. Вы можете заменить абсолютные пути в своих командах выражениями относительного пути, и уже одно это избавит вас от необходимости вводить ненужные символы при указании пути к файлу или каталогу.
Кроме того, выражения абсолютного пути имеют неотъемлемое требование, связанное с ними. Вам необходимо подробно знать всю структуру каталогов Linux, чтобы правильно использовать абсолютные пути.
Представьте, что вы сейчас находитесь в folder2 в следующей структуре каталогов:
/etc/folder1/folder2/folder3
Теперь, если вы хотите перейти к каталогу folder3 в конце иерархии, используя абсолютный путь, введите:
<span class="hljs-built_in">cd</span> /etc/folder1/folder2/folder3
С другой стороны, чтобы указать на folder3, когда вы находитесь внутри folder2, используя относительные пути, введите:
<span class="hljs-built_in">cd</span> ./folder3
Использование только выражений относительного пути избавило вас от усилий и времени, которые вы в противном случае потратили бы на ввод 19 символов. Хотя поначалу экономия может показаться незначительной, в долгосрочной перспективе она может оказаться полезной.
2. Используйте псевдонимы командной строки
Еще одно большое преимущество использования интерфейса командной строки, а не графического пользовательского интерфейса, заключается в том, что большинство оболочек Linux позволяют вам устанавливать псевдонимы командной строки, которые представляют собой переменные, которые действуют как ссылка на другую команду всякий раз, когда они вызываются в оболочке.
Псевдонимы похожи на строковые переменные в языках программирования. Имя переменной обычно короткое, но когда вы печатаете ее значение, она может выводить сто или даже тысячи слов одновременно.
Поэтому, если есть длинная команда, которую вы запускаете довольно часто, вы можете установить для нее гораздо более короткий псевдоним, чтобы сэкономить время.
Представьте, что вы работаете над проектом и вам нужно часто переходить в каталог вашего проекта с помощью следующей команды cd:
<span class="hljs-built_in">cd</span> /home/username/project/python/scraper/myscraper
Набрав его один раз, это точно. Но что, если вам нужно набрать одну и ту же команду десятки раз? Может быть, 20, 30 или 50 раз? Более разумным выбором будет установка псевдонима, который заменяет вышеупомянутую команду. Вы можете сделать это с помощью команды alias следующим образом:
alias cdproj=<span class="hljs-symbol">"</span>cd /home/username/project/python/scraper/myscraper<span class="hljs-symbol">"</span>
Теперь, когда вы вводите cdproj в терминале, оболочка изменит текущий рабочий каталог на папку проекта.
Чтобы сохранить псевдоним навсегда, добавьте указанную выше команду в файл конфигурации оболочки, например .bashrc, .zshrc и т. д.
3. Используйте функцию автозаполнения
Большинство оболочек Linux упрощают ввод команд, предлагая функцию автозаполнения, аналогичную той, что есть на ваших смартфонах.
Когда вы указываете путь к файлу или каталогу, в большинстве случаев вы можете нажать Tab для автоматического завершения выражения пути. В зависимости от используемой оболочки вы даже можете автоматически выполнять другие команды Linux, нажимая Tab.
В качестве примера рассмотрим структуру каталогов /etc/folder1/folder2/folder3. Если вы находитесь внутри folder1 и хотите изменить каталог на folder2, вы можете ввести «cd fold», а затем сразу же нажать клавишу Tab, чтобы оболочка выполнила команду за вас.
4. Создайте сценарии оболочки для повторяющихся операций
Написание собственных сценариев оболочки для повторяющихся задач может быть полезным, если у вас есть набор команд, которые вы часто запускаете. Это спасение особенно для программистов, которым часто нужно скомпилировать и выполнить программу, используя ряд команд, которые работают с исходным файлом.
Предположим, вам нужно выполнить группу команд несколько раз в течение дня. Сюда могут входить команды для фиксации изменений в центральном репозитории Git проекта, перемещения некоторых файлов из одного места в другое или просто изменения имени последнего измененного файла в определенной папке.
Вместо того, чтобы вручную вводить команды в терминале, вы можете написать сценарий оболочки, который автоматизирует этот процесс за вас. Представьте, что вам нужно добавить и зафиксировать изменения, внесенные в исходный код проекта, с помощью Git. Вы можете использовать следующий сценарий оболочки, чтобы автоматизировать это:
<span class="hljs-meta">#!/bin/bash</span>
<span class="hljs-built_in">cd</span> /home/username/project/directory/
git add <span class="hljs-comment">--all</span>
git <span class="hljs-keyword">commit</span> -m "Another <span class="hljs-keyword">change</span>"
echo <span class="hljs-symbol">"</span>All changes were successfully committed<span class="hljs-symbol">"</span>
Сохраните файл как «changes.sh», а затем запускайте его с помощью следующей команды всякий раз, когда вы хотите зафиксировать изменения в репозитории:
./changes.sh
Перед запуском скрипта обязательно предоставьте файлу права на выполнение с помощью chmod:
<span class="hljs-selector-tag">sudo</span> <span class="hljs-selector-tag">chmod</span> +<span class="hljs-selector-tag">X</span> <span class="hljs-selector-tag">changes</span><span class="hljs-selector-class">.sh</span>
Бонусный совет: доступ к истории команд
Linux делает все возможное, чтобы свести к минимуму время и усилия, которые вы тратите на работу с командной строкой. Ссылки оболочки, сценарии и функция автозаполнения делают ввод команд удобным для обитателей терминала, чтобы они могли получать удовольствие от работы в оболочке.
Еще одна такая функция — возможность доступа к ранее введенным командам с помощью истории команд. Находясь внутри терминала, вы можете использовать клавишу «Вверх» для навигации по истории команд и нажать «Ввод», чтобы ввести команду.
Предположим, вы изменили текущий рабочий каталог на папку проекта двумя часами ранее. Вы можете продолжать нажимать Вверх , пока не найдете нужную команду. Затем просто нажмите Enter, чтобы снова ввести команду.
Вы можете только просматривать и повторно выполнять команды, которые вы запускали в текущем сеансе терминала.
Терминал Linux удобен для начинающих
Командная строка поначалу может пугать новичков, они быстро понимают, что использовать терминал для выполнения как простых, так и сложных операций выгодно, поскольку он дает им больший контроль над своей системой.
Вы можете либо полностью использовать свой рабочий стол Linux с помощью графического интерфейса, либо узнать больше об операционной системе и компьютерах, ознакомившись с командной строкой и ее приложениями. Выбор за вами!