Перейти к содержимому

Быстрое изучение Bash: 30 легких команд для новичков

Если вы здесь, вероятно, вы столкнулись с проблемой изучения Bash команд. Давайте это исправим 🙂

Первые команды – учимся ходить

Современные файловые системы – это древовидные каталоги с корневой и родительскими директориями. Движение вверх по родительским каталогам приводит к корневому. В некоторых системах встречается несколько корневых каталогов, например, всем известные диски Windows:  «C:» ,  «A:», etc.

Но в Unix-подобных системах все по-другому: здесь принят один корневой каталог с именем  /. А вот и основные команды Bash для перемещения по файловой системе:

При работе в файловой системе пользователь находится в каталоге, который называется текущим или рабочим. Команда  «pwd» выводит рабочий каталог пользователя:

С  «ls» вы сможете вывести содержимое каталога (файлы и дочерние директории):

Перейти в другой каталог поможет  «cd»:

Используйте команду  «cd ..» для быстрого перемещения в родительскую директорию:

Сокращение  «cd ~» или просто «cd» используется для перемещения домой, в  «/home/$USER»:

Три bash команды для управления

Иногда вам потребуется запускать эти команды одну за другой. Тогда на помощь приходит оператор  «;»:

Точка с запятой означает, что сначала перечисляется содержимое рабочего каталога с помощью  ls, а затем  pwd выводит местоположение каталога. Еще один полезный инструмент для создания цепочек команд –  «&&«. При использовании  && команда справа не будет выполняться, если команда слева не выполнена:

Но если использовать  ; , вторая команда выполняется даже после ошибки в первой:

А вот вам небольшой трюк в bash. Команда  «&» похожа на  &&, но на самом деле выполняет другую функцию. Часто процессы блокируют ввод в терминал во время работы. Чтобы свернуть подобный процесс в фон, используйте  & в конце команды. Тогда процесс выполняется в фоне, не блокируя ввод в окно терминала:

Скорая помощь для тех, кто забыл

Даже если вы давно пользуетесь продвинутыми командами bash, вы все еще можете забыть что-то из базиса, и это нормально. Всегда можно получить подсказку для большинства утилит. Как? Просто введите  «-h» или  «—help» в конце команды:

Программы и команды Linux сопровождаются справочным руководством. Введите  «man» перед командой, чтобы вызвать руководство. Выход из  man – клавиша q:

Быстрый просмотр и редактирование файлов

«head» выводит первые строки файла. Флаг  «-n» указывает количество отображаемых строк:

«tail» выводит последние строки файла. Можно получить последние  «n» строк или конец файла, начиная с  «N«-й строки, с помощью  «tail -n +N«:

Используйте  «cat» с одним или несколькими файлами: так можно быстро посмотреть содержание.

Если файл большой, можно вместо cat использовать команду more, она выведет содержимое файла постранично. Листаем пробелом, выходим по клавише q.

«nano» – минималистичный текстовый редактор командной строки. Редактор подходит начинающим и тем, кто не любит разнообразия. На начальных этапах он покроет все ваши требования.

«nedit» – легкий графический редактор, который открывается в окне. Редактирование по принципу «укажи и щелкни» с перетаскиванием, есть подсветка синтаксиса. Можно использовать  nedit, когда следует постоянно вносить небольшие изменения и перезапускать скрипт.

Современные редакторы предлагают функции поиска и замены, подсветки синтаксиса и так далее.  «vi (m)» и  «emacs» функциональней  nano и  nedit, но сложней в освоении.

Создаем и удаляем файлы/директории

«touch» нужен для изменения временных меток файлов и для создания пустого файла. Можно создать новый файл в  nano:

Затем править файл и сохранить:

Или использовать  touch:

«mkdir» создает новые каталоги:

Теперь удалим файл с помощью команды  «rm«.

WARNING: файл невозможно восстановить!

Необходимость подтверждения вызывается флагом  «-i«:

Удаляйте пустые каталоги с помощью  «rmdir«. Если  «ls -a» используется в пустом каталоге, команда выводит только ссылку на сам каталог  «.» и ссылку на родительский каталог  «..«:

Команда  rmdir удаляет только директории:

Чтобы удалить директорию с содержимым, используйте  «rm -rf«:

Перемещаемся, копируем, ссылаемся

«mv» перемещает и переименовывает файл. Для переименования введите новое имя файла:

«cp» копирует файл:

«ln -s» создает симлинк (символическую ссылку на файл, своеобразный ярлык):

Bash: история команд

В Bash доступна функция автоматического завершения команды по кнопке tab. Введите начальную часть команды и нажмите tab, чтобы терминал предложил полную строку.

Нажмите клавишу tab после  «ls t«, и команда будет завершена автоматически.

Иногда нужно нажимать tab несколько раз:

Bash хранит историю ранее введенных команд. Чтобы выполнить поиск нажмите Ctrl + r:

Нажимаем Ctrl + r:

Вводим «mobi» и находим последнюю команду с этой строкой:

 

Деревья каталогов, использование диска и процессы

По умолчанию  mkdir создает только один каталог. Это означает, что, например, если каталога  «a/b» не существует, то  «a/b/c» не может быть создан с помощью  mkdir:

Но если указать флаг  «-p«,  mkdir создаст все директории, которые отсутствуют в указанном пути:

«tree» отображает структуру каталога в виде отформатированного дерева. По умолчанию  tree печатает древовидную структуру, начиная с указанного каталога, но количество уровней ограничивается флагом  «-L«:

 

Скрывайте пустые каталоги в дереве с помощью  «—prune«. Обратите внимание, что при этом не выводятся каталоги, которые содержат другие пустые каталоги:

«df» показывает, сколько места занимают файлы на дисках.

В приведенной выше команде  -h означает не «help», а «human-readable». Некоторые команды используют этот флаг для отображения размеров в  «K» для килобайт и  «G» для гигабайт, вместо записи гигантского числа байтов.

«du» показывает использование файлового пространства каталогами. Если хочется узнать, сколько свободного места на жестком диске, используйте  df, а для каталогов используйте  du:

df принимает флаг  «—max-deep = N«, который показывает директории только на  N уровней в указанном каталоге:

«ps» показывает запущенные процессы пользователей:

Вот вам и основы Bash. Но давайте копнем чуть глубже.

Другие полезные команды bash

Меняйте пароль учетной записи с помощью  «passwd«. Команда проверяет текущий пароль и просит ввести новый пароль дважды:

«logout» выполняет выход пользователя из сеанса оболочки:

«exit» выходит из консоли:

Запустите команду  «clear«, чтобы переместить текущую строку терминала в верхнюю часть экрана. Используйте для очистки рабочего пространства.

Используйте  «*» при поиске файлов. Обратите внимание на разницу между следующими командами:

Используйте  * много раз в одной команде с символами и без:

Ну все! Теперь вы точно застрахованы от случаев, когда bash команда не найдена.

Опубликовано вLinux

Ваш комментарий будет первым

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *