img5cc898db4e3d3_lOeZY.png

Команды Linux, которые должен знать каждый пользователь

В контексте операционных систем в целом и Linux в частности термин «команда» означает либо приложение командной строки, либо функциональность, встроенную в пользовательскую оболочку. Однако для конечного пользователя это различие не имеет большого значения. Оба используются одинаково. Вы вводите слова в эмулятор терминала, а он выдает результаты.

Мы ознакомим вас с командами, которые пригодятся в повседневной работе каждому пользователю Linux, особенно это касается команд с текстовыми интерфейсами. Они разделены на несколько категорий, соответствующих конкретным задачам. Мы не рассматриваем конкретный дистрибутив, но большинство из описанных утилит не требуют дополнительной установки. В противном случае их несложно найти в официальных репозиториях.

 

Команды Linux для управления файловой системой

LS

По умолчанию показывает содержимое текущего каталога. Если в параметрах указать путь, то она перечислит содержимое конечного каталога. Полезные опции: -l (List) форматирует вывод в виде списка с более подробной информацией, и -a (All) включает показ скрытых файлов.

CAT

Печатает содержимое заданного файла в стандартный вывод. Если передать несколько файлов, команда склеит их. Вы также можете перенаправить вывод в ещё один файл с помощью символа '>'. Если вам нужно вывести только определенное количество строк, используйте опцию -n, которая нумерует их.

CD

Позволяет перейти из текущего каталога в указанный. Если запустить без параметров, команда возвращает в домашний каталог. Вызов с двумя точками возвращает на уровень вверх относительно текущего каталога. Вызов с тире (cd -) возвращает к предыдущему каталогу.

PWD

Печатает ваш текущий каталог. Она может пригодиться, если ваша командная строка Linux не содержит такую информацию. Эта команда будет особенно востребована в Bash программировании, где для получения ссылки на каталог выполняется скрипт.

MKDIR

Создает новые каталоги. Наиболее удобная опция -p, которая позволяет создать всю структуру подкаталогов одной командой, даже если они ещё не существуют.

FILE

Показывает вам тип файла. Так как в Linux файлы не обязаны всегда иметь расширения для работы с ними, пользователю иногда трудно определить, что за файл перед ним. Эта маленькая утилита решает проблему.

CP

Команда поможет при копировании файлов и каталогов. Она не копирует каталоги по умолчанию рекурсивно, поэтому не забудьте добавить опцию -r или -a. Последняя включает режим сохранения атрибутов, владельца и временного штампа в дополнение к рекурсивному копированию.

MV

Перемещает или переименовывает файлы и каталоги. Примечательно, что в Linux это одна и та же операция. Переименование - это перемещение файла в ту же папку с другим именем.

RM

Это очень полезная команда Linux, но с ней надо быть осторожней. Она удаляет файлы и папки. Если нужно рекурсивное удаление, используйте опцию -r. Команда Rm удаляет файлы не в корзину, из которой всё можно восстановить, а полностью стирает, поэтому ее действия необратимы. 

LN

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

CHMOD

Команда изменяет права доступа к файлу. Это относится к их просмотру, записи и выполнению. Каждый пользователь может изменять права для своих файлов.

CHOWN

Изменяет владельца файла. Только пользователь root может задать эту команду. Для рекурсивного изменения используйте опцию -R.

FIND

Поиск в файловой системе, файлах и каталогах. Это универсальная и мощная команда Linux не только из-за функции поиска, но и благодаря возможности выполнять произвольные команды для файлов.

LOCATE

Команда locate ведёт поиск в базе данных updatedb для шаблонов имён файлов. Эта база данных содержит снимок файловой системы. Это позволяет осуществить очень быстрый, но не очень надежный поиск. Вы не можете быть уверены, что ничего не изменилось с момента последнего снимка.

DU

Показывает размер файла или каталога. Среди самых полезных опций - -h, которая преобразует размеры файлов в более удобный для пользователя формат, -s, которая дает сводку вместо всего списка, и -d, которая контролирует глубину рекурсии по каталогам.

DF

Сканирует дисковое пространство. Вывод по умолчанию достаточно подробный, она перечисляет каждую файловую систему, ее размер, количество использованного и доступного пространства. Добавив опцию -h, вы сделаете размеры удобными и легко читаемыми.

DD

Это команда для копирования и преобразования файлов. Вы указываете источник и пункт назначения и пару дополнительных опций, и DD делает копию одного файла в другой. Вы можете задать точный размер блока, который нужно записать или скопировать. Утилита неразборчива и работает со всеми устройствами. Если нужно перезаписать жёсткий диск нулями из /dev/zero, вы можете сделать это. Команда также часто используется для создания живых USB-флешек или гибридных ISO образов.

MOUNT / UMOUNT

Это команды консоли Linux для подключения и отключения файловых систем. Права на это имеет только пользователь root  У вас есть возможность подключать различные устройства - от USB накопителей, до ISO образов. 

 

Команды Linux для обработки текстов

 

MORE / LESS

Это две утилиты позволяют просматривать фрагменты текстов на одном экране. Представьте себе очень длинный вывод какой-то команды. Возможно, вы вызвали cat для файла, и вашему эмулятору терминала понадобилось несколько секунд, чтобы прокрутить весь текст. Если ваш терминал не поддерживает прокрутки, вы можете сделать это с помощью less. Less новее, чем more и поддерживает больше опций, поэтому использовать more нет смысла.

HEAD / TAIL

Ещё одна пара, но здесь каждая команда имеет свое применение. Head выводит несколько первых («заголовочных») строк из файла, а tail выдает несколько последних («хвостовых») строк. По умолчанию каждая утилита выводит десять строк, но вы можете регулировать их количество с помощью опции -n. Ещё один полезный ключ -f (follow -следовать), который постоянно выводит изменения в файле на экран. Например, если вы хотите следить за логфайлом, вместо того, чтобы постоянно открывать и закрывать его, используйте команду tail -nf.

GREP

Grep ищет текст по шаблону. По умолчанию она принимает стандартный ввод, но вы можете указать файлы для поиска. Шаблон может быть обычной строкой или регулярным выражением. Команда может вывести как совпадающие, так и не совпадающие строки и их контекст. Каждый раз, когда вы выполняете команду, которая выдает очень много информации, не нужно просматривать всё вручную, grep сделает это за вас.

SORT

Сортирует строки текста по различным критериям. Среди наиболее полезных опций - -n, который сортирует строки по числовому значению, и -r, которая инвертирует вывод. Это может пригодиться для сортировки вывода. Например, если хотите отсортировать файлы в порядке убывания по размеру, просто объедините эти две команды.

WC

Утилита командной строки Linux для подсчета слов в командной строке, подсчета строк, байтов и символов.

DIFF

Показывает различия между двумя файлами через построчное сравнение. Он показывает только строки, в которых обнаружены отличия. Измененные строки отмечаются символом "с", удаленные - "d", а новые - "а".

 

Команды Linux для управления процессами

 

KILL / XKILL / PKILL / KILLALL

Эти команды служат для завершения процессов, но они принимают различные параметры. Kill нужен идентификатор процесса, xkill достаточно кликнуть по окну, чтобы закрыть его. killall и pkill принимают имя процесса, но имеют несколько разные параметры и поведение. Обратите внимание, что они не принадлежат к одному и тому же пакету, xkill вряд ли будет установлен по умолчанию. 

PS / PGREP

Как уже упоминалось, чтобы уничтожить процесс, нужен идентификатор (PID). Один из способов получить его, это утилита ps, которая печатает информацию о текущих активных процессах. По умолчанию вывод не очень полезный, поэтому используйте опцию -e, чтобы увидеть информацию об определённом процессе. Это только снимок состояния на момент вызова, и информация не будет обновляться. Команда ps с ключом aux выводит полную информацию о процессах. Команда Pgrep работает следующим образом: вы задаете имя процесса, а утилита показывает его идентификатор.

TOP / HTOP

Эти две команды схожи, обе отображают процессы и могут быть использованы как консольные системные мониторы. Мы рекомендуем при первой же возможности установить htop, если в вашем дистрибутиве он не поставляется по умолчанию. Это улучшенная версия top. Интерактивный интерфейс дает возможность не только просматривать процессы, но и контролировать их.

TIME

Команда определяет время выполнения процесса. Думайте об этом как о секундомере для выполнения программы. Она будет полезна, если вам интересно, насколько сильно ваша реализация алгоритма отстает от стандартной. 

 

Команды Linux для управления пользователями

 

useradd, userdel, usermod

Посредством этих команд консоли Linux вы можете добавлять, удалять и изменять учетные записи пользователей. Скорее всего, вы не будете ими часто пользоваться, особенно если вы являетесь единственным пользователем системы. Управлять пользователями можно и с помощью графического интерфейса.

PASSWD

Данная команда позволяет изменить пароль учетной записи пользователя. Вы можете с ее помощью сбросить пароли всех пользователей, конечно, если вы являетесь пользователем root. Частая смена пароля является полезной практикой с точки зрения соблюдения безопасности.

 

Команды Linux для просмотра документации

 

MAN / WHATIS

Команда man открывает руководство по определённой команде. Большинство команд Linux поставляются со страницей руководства. Whatis предоставляет сводную строку, взятую из соответствующих разделов руководства.

WHEREIS

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

 

Команды Linux для управления сетью

 

IP

Если список команд, связанных с сетью, кажется вам слишком коротким, скорее всего вы не знакомы с утилитой ip. В пакете net-tools содержится множество других утилит: ipconfig, netstat и прочие устаревшие, вроде iproute2. Всё это заменяет одна утилита - ip. Это как швейцарский армейский нож для работы с сетью.

PING

Ping - это ICMP ECHO_REQUEST дейтаграммы. Данная утилита может быть очень полезным диагностическим инструментом. Она поможет быстро проверить, подключены ли вы к маршрутизатору или к интернету, и дает некоторое представление о качестве подключения.


Понравилась статья? Лайкни и поделись!
Share
Class

Читайте также