Как осуществить просмотр подкаталогов и их содержимого в linux
Перейти к содержимому

Как осуществить просмотр подкаталогов и их содержимого в linux

  • автор:

Команда tree в Linux

В Linux команда tree используется для рекурсивного вывода структуры каталогов или отображения содержимого каталогов в древовидном формате.

Примеры использования команды tree в Linux

Команда выводит пути к каталогам и файлам в каждом подкаталоге, а также данные об общем количестве подкаталогов и файлов.

Содержание

Синтаксис

Опции

-a Перечислить все файлы -d Только список каталогов -l Следовать символическим ссылкам, ведущим к каталогам -f Вывести префикс полного пути для каждого файла -x Оставаться только в текущей файловой системе -L level Опускаться только на нижние уровни каталогов -R Перезапустить команду, когда будет достигнут максимальный уровень каталога -P pattern Перечислить только те файлы, которые соответствуют заданному шаблону -I pattern Не перечислять файлы, соответствующие заданному шаблону -o filename Вывод в файл вместо стандартного вывода

-q Вывести непечатаемые символы как ? -N Вывести непечатаемые символы как есть -Q Заключить имена файлов в двойные кавычки -p Вывести список разрешений для каждого файла -u Отобразить владельца файла или номер UID -g Отобразить владельца файловой группы или номер GID. -s Вывести размер в байтах каждого файла -h Вывести размер более понятным для человека способом -D Вывести дату последнего изменения или изменения статуса (с опцией -c ) -F Добавить / , = , * , @ , | или > —inode Вывести номер индексного дескриптора каждого файла —device Вывести идентификационный номер устройства, которому принадлежит каждый файл

-v Сортировать файлы в алфавитно-цифровом порядке по версии -t Сортировать файлы по времени последнего изменения -c Сортировать файлы по времени последнего изменения статуса -U Оставлять файлы несортированными -r Обратный порядок сортировки —dirsfirst Список каталогов перед файлами ( -U отключена) —filesfirst Список файлов перед каталогами ( -U отключена)

-i Не выводить линии отступа -n Всегда отключать раскрашивание -C Всегда включать раскрашивание

Установка

Утилита в дистрибутивах Linux не предустановлена. Её необходимо устанавливать самостоятельно, но установка её очень проста.

Примеры использования команды tree в Linux

Без параметров

Для просмотра содержимого каталога в древовидном формате, перейдите в нужный каталог и запустите команду tree без каких-либо параметров:

Команда вывела содержимое рабочего каталога, рекурсивно показывая подкаталоги и файлы, а также данные об общем количестве подкаталогов и файлов.

Не забудьте вызвать sudo для запуска дерева в каталоге, для которого требуются права доступа пользователя root .

Включение в вывод скрытых файлов

Для включения в вывод скрытых файлов используется опция -a :

В данном случае я добавил также опцию -x , чтобы не выполнялась рекурсия.

С префиксом полного пути

Для просмотра содержимое каталога с префиксом полного пути для каждого подкаталога и файла используется опция -f :

Только подкаталоги

Вы также можете указать дереву печатать только подкаталоги без файлов в них, используя опцию -d . При использовании вместе с опцией -f будет выводиться полный путь к каталогу:

Ограничение глубины отображения дерева

Для ограничения максимальной глубины отображения дерева каталогов используется опция -L с добавлением цифрового указания глубины:

Максимальная глубина отображения дерева каталогов была установлена на 2 .

Вывод файлов по шаблону

Для отображения только тех файлов, которые соответствуют шаблону подстановочных знаков, используется опция -P и указывается шаблон:

В этом примере для отображения файлов был использован шаблон *.ttf .

Удаление пустых каталогов из вывода

Вы можете указать дереву удалять пустые каталоги из вывода, добавив опцию —prune :

Разрешения для файлов

Для вывода разрешений для каждого файла используется опция -p :

Имя пользователя или UID

Для вывода имени пользователя используется опция -u . Можно также добавить и имя группы (GID), используя опцию -g :

Размер файлов в удобном формате

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

Дата последнего изменения

Для отображения даты последнего изменения для каждого подкаталога или файла используется опция -D :

Вывод дерева в файл

Вы можете вывести дерево в файл для последующего анализа, используя опцию -o :

Итоги

Несомненно, команда tree в Linux окажет серьёзную помощь многим пользователям. Использование её в работе не представляет особых сложностей.

Шпаргалка по основным командам Bash

Elman Mamedov

Неважно кто вы, разработчик ПО, специалист по данным, менеджер ИТ-инфраструктуры или просто любитель компьютеров — вам нужно знать, как пользоваться терминалом в Linux и macOS. Но сложность в том, что необходимо запомнить слишком много команд. И если у вас нет чудо-памяти, время от времени приходится искать в Интернете ту или иную команду.

Сегодня я поделюсь с вами самыми популярным и полезными командными интерпретаторами.

Основные

Помощь

Забыли аргументы для cp ? Какая опция у команды mkdir ? Вот вам подсказка:

Конвейер

Зачастую с его помощью перенаправляют вывод одной команды на ввод другой или приписывают команду к файлу:

Фильтрация вывода

Бывает, что команда выводится слишком долго. В этом случае вы либо разделите страницу с помощью команды more или less , либо выведите строки, которые содержат специальное слово или предложение с grep :

Очистка экрана

Слишком много текста в терминале? Просто напишите clear и продолжайте работать.

Система

Информация о системе

С этими командами вы с легкостью получите все подробности о компьютере:

Работам с процессами

Следующие команды предоставляют общие сведения о всех процессах, происходящих в системе. В macOS и некоторых дистрибутивах Linux htop не установлен, поэтому перед использованием нужно установить его с помощью стандартного менеджера пакетов (для macOS — Homebrew):

Смена пользователей

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

Копирование и вставка в буфер обмена

Вы можете скопировать и вставить текст из/в терминал, выделив их и нажав Ctrl + C или Ctrl + V. Но иногда хочется напрямую получить доступ к буферу обмена. И как вы видите ниже, это не так уж и просто, что на Linux, что на macOS.

Переменные и путь

Можно двумя способами определить переменные внутри оболочки: в реальном времени, написав в терминале соответствующую команду, или же определить их в файле .bashrc в домашний каталог, где они будут храниться вечно.

Ещё один интересный инструмент — alias (псевдоним), сокращение для длинных команд. Посмотрим, как он строится:

Для тех, кто не знает, путь (Path) – это каталоги, в которых ОС ищет файлы для исполнения. С его помощью можно запустить файл, написав лишь название, даже не нужно знать его расположение. Кроме того, в путь можно добавить папку, а также найти каталог, где находится исполняемый файл, с помощью команд:

Файлы и каталоги

Смена текущего каталога

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

Содержимое каталога

Чтобы вывести в каталоге файлы, папки, а также их свойства, не обойтись без команды ls .

Скачать файл из Интернета

Самый простой способ скачать файл с веб-серверов — это команда wget .

Создать каталог

Если вы хотите создать папку, используйте команду mkdir .

Копирование, перемещение и удаление

Как правило, функции копирования, перемещения и удаления выполняют через файловый менеджер, но можно делать это и через терминал.

Права доступа и владельцы

Права доступа и владельца файла или каталога можно изменить с помощью команды chmod и chown .

Поиск файлов

Забыли где файл contacts.json ? Хотите вывести все PDF файлы, находящиеся в папке? С помощью команды find вы можете сделать это и многое другое.

Вычисление контрольной суммы SHA256 файла

При скачивании любой программы из Интернета, рекомендуется проверить контрольную сумму SHA, чтобы убедиться, всё ли верно скачалось. И сделать это гораздо легче через терминал:

Сжатие и распаковка TAR/ZIP файлов

Неважно, что у вас TAR или ZIP файл, вы можете распаковать его через терминал или же создать из существующих папок:

Свободное место на диске

Хотите узнать доступное место на жестком диске? Или на внешнем? Или в текущем каталоге? В этих вопросах помогает команда df .

Просмотр содержимого файла

Через терминал можно не только просматривать содержимое текстового файла, но и проводить анализы, например сортировать и менять порядок строк по содержанию, подсчитывать количество строк, слов, символов, и выделить столбцы, если это табличный файл. Рассмотрим их в действии:

Базовые команды в Linux для начинающих

Для пользователей из мира Windows взаимодействие с командной строкой в Linux поначалу может показаться несколько пугающей и запутанной затеей. Однако использовать её не так уж и сложно. В этой статье мы рассмотрим наиболее распространенные команды в Linux.

Навигация по файловой системе

При навигации по файловой системе в Linux можно использовать как абсолютный, так и относительный пути к ресурсу.

Абсолютный (или полный) путь начинается с корневого каталога, обозначаемого символом / , а относительный путь начинается с текущего каталога (в котором в данный момент работает пользователь).

Команда pwd

Команда pwd (от англ. «present working directory») позволяет узнать, в каком каталоге вы находитесь в данный момент:

Результатом будет путь к текущему рабочему каталогу:

Команда cd

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

Чтобы перейти в другой каталог, вы можете использовать абсолютный или относительный путь. Например, перейти в папку Downloads, расположенную в текущем каталоге, можно как через относительный путь:

Так и через абсолютный путь:

Две точки .. обозначают родительский каталог или каталог уровнем выше текущего. Предположим, что в данный момент вы находитесь в каталоге /usr/local/bin. Чтобы перейти в каталог /usr/local (на один уровень выше текущего каталога), необходимо ввести:

Чтобы подняться на два уровня вверх:

Чтобы вернуться к предыдущему рабочему каталогу, используйте символ тире – в качестве опции:

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

$ cd имя\ каталога\ с\ пробелами

Работа с файлами и каталогами

Команда ls

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

Чтобы вывести содержимое конкретного каталога, достаточно указать путь к этому каталогу в качестве параметра:

По умолчанию, команда ls отображает только имена файлов и каталогов. Для более подробного вывода применяется опция -l :

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

-rw-r—r— 1 root root 337 Oct 4 11:31 /etc/hosts

По умолчанию, команда ls не показывает скрытые файлы (файлы, имена которых начинаются с точки . ). Чтобы отобразить все файлы, включая скрытые, используйте опцию -a :

Для вывода списка всех файлов в подкаталогах используйте опцию -R :

Команда file

Файлы в Linux не обязаны всегда иметь расширения для того, чтобы с ними можно было работать. Поэтому пользователю иногда трудно определить, что за файл перед ним. Команда file помогает решить данную проблему, отображая информацию о типе файла на основе его содержания:

/etc/fstab: ASCII text

Команда file может работать и с директориями, например:

/tmp/: sticky, directory

Команда touch

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

Чтобы создать новый файл, используйте команду touch с именем (создаваемого) файла в качестве параметра:

Если файл уже существует, команда touch изменит отметку о времени последнего доступа (или изменения) к нему.

Команда mkdir

Команда mkdir (от англ. «make directory») позволяет создавать новые каталоги. Для этого укажите имя каталога в качестве параметра:

В качестве параметров команда mkdir может принимать одно или несколько имен каталогов. Если параметром является имя каталога без полного пути, то новый каталог создастся в текущем рабочем каталоге.

Для создания родительских каталогов используется опция -p :

$ mkdir -p Projects/ravesli.com/src/assets/images

Вышеприведенная команда создаст полную структуру каталогов.

При использовании команды mkdir с опцией -p , она создает каталог только в том случае, если он изначально отсутствует.

Команда rmdir

Команда rmdir (от англ. «remove directory») используется для удаления (только) пустых каталогов:

Команда ln

Команда ln (от англ. «lin) используется для создания символьных ссылок. Символьная ссылка — это особый тип файла, который указывает на другой файл или каталог. Чтобы создать символьную ссылку, используйте команду ln -s , указывая имя файла в качестве первого параметра и имя символьной ссылки в качестве второго параметра:

$ ln -s имя_файла имя_ссылки

Если в качестве параметра указан только файл, команда ln создаст в текущем рабочем каталоге ссылку на этот файл с тем же именем, что у файла.

Команда rm

Команда rm (от англ. «remove») используется для удаления файлов и каталогов. При указании без параметров данная команда удаляет только файлы. Стоит отметить, что при этом команда не запрашивает у пользователя подтверждения на продолжение удаления файлов.

Чтобы удалить файл или символьную ссылку, используйте команду rm и имя файла в качестве параметра:

Также в качестве параметров допускается указывать одно или несколько имен файлов или каталогов.

Опция -i указывает команде rm запрашивать у пользователя подтверждение перед удалением файла:

rm: удалить пустой обычный файл ‘file.txt’?

Опция -d используется для удаления одного или нескольких пустых каталогов:

Чтобы рекурсивно удалить непустые каталоги и все файлы в них, используйте опцию -r (от англ. «recursive»):

Опция -f указывает команде rm никогда не запрашивать подтверждения у пользователя и игнорировать несуществующие файлы.

Примечание: Будьте очень осторожны с командой rm -rf и дважды проверьте, в каком каталоге вы находитесь, т.к. вызов rm -rf безвозвратно (и без дополнительного подтверждения) удалит все файлы и папки из него.

Команда cp

Команда cp (от англ. «cop) позволяет копировать файлы и каталоги. Чтобы скопировать файл в текущий рабочий каталог, используйте исходный файл в качестве первого параметра, а новый файл — в качестве второго:

$ cp file file_backup

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

$ cp file.txt /backup

По умолчанию, если файл назначения существует, он будет перезаписан.

Чтобы скопировать каталог, вместе с его файлами и подкаталогами, используйте опцию -R или -r :

$ cp -R Pictures /opt/backup

Команда mv

Команда mv (от англ. «mov) используется для перемещения файлов и каталогов из одного места в другое, а также для переименования файлов. Например, чтобы переместить файл file.txt в каталог /tmp, вы должны выполнить:

Чтобы переименовать файл, необходимо указать имя целевого файла, а затем его новое имя:

$ mv file.txt file1.txt

Синтаксис перемещения каталогов такой же, как и при перемещении файлов. Чтобы одновременно переместить несколько файлов и каталогов, укажите конечный каталог в качестве последнего параметра:

$ mv file.tx1 file1.txt /tmp

Команда tar

Команда tar является наиболее часто используемой командой для объединения нескольких файлов в один *.tar-архив — распространенный формат файлов Linux (похожий на формат .zip), причем процедура сжатия для него не является обязательной.

Предположим, что нам нужно создать .tar-архив каталога /etc, для этого необходимо использовать следующую команду:

$ tar -cvf myarchive.tar /etc

Опция -c указывает команде tar на то, что мы создаем .tar-файл, опция -v отображает список обрабатываемых файлов, а опция -f применяется для указания имени архивного файла.

Если вы хотите добавить файл к уже существующему .tar-архиву, то вместо опции -c используется опция -r . Например, давайте добавим к нашему архиву myarchive.tar файл /etc/fstab:

$ tar -rvf myarchive.tar /etc/fstab

Примечание: К уже сжатому .tar-файлу добавить новый файл или каталог не получится.

Извлечение в текущую папку файлов и каталогов из архивного файла выполняется с помощью опции -x :

$ tar -xvf myarchive.tar

Опция -C дает пользователю возможность самостоятельно указывать путь для извлекаемых файлов:

$ tar -xvf myarchive.tar -C /tmp/

Команды zip и unzip

Команда zip применяется для сжатия файлов в .zip-архив, а команда unzip — для извлечения заархивированных файлов из .zip-архива.

Чтобы создать архив из нескольких файлов, просто укажите имя создаваемого архива и перечислите список помещаемых в него файлов:

$ zip newarchive.zip file1 file2 file3

Если вы хотите сжать каталог вместе с вложенными в него файлами, то необходимо использовать опцию -r :

$ zip –r newarchive.zip /home/diego/mydocs/

Также, цифрами от 0 (без сжатия, быстро) до 9 (максимальное сжатие, медленно) вы можете указывать степень сжатия будущего архива. По умолчанию, используется 6-й уровень сжатия:

$ zip -9 –r newarchive.zip /home/diego/mytxtfiles/

Для извлечения содержимого архива в текущий каталог используется команда unzip :

Опция -d позволяет распаковать содержимое архива в указанную папку, например:

$ unzip myarchive.zip –d /tmp/

Команда find

Команда find выполняет поиск файлов и каталогов в заданном каталоге. Например, следующая команда будет искать файл с именем notes.txt в каталоге /home и его подкаталогах:

$ find /home/ -name notes.txt

Команда df

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

Команда du

Команда du (от англ. «disk usage») используется для проверки того, сколько места занимает указанный файл или каталог. Чтобы увидеть занимаемое дисковое пространство в байтах, килобайтах или мегабайтах, добавьте опцию -h :

Владение файлами и права доступа

Команда chmod

Команда chmod (от англ. «change mod) позволяет изменить права доступа к файлам. Она работает в двух режимах: символьном и числовом.

При использовании числового режима вы можете установить разрешения для владельца, группы и всех остальных при помощи заданного набора чисел. Разрешения на запись, чтение и выполнение имеют следующие числовые значения:

x (выполнение) = 1

нет разрешений = 0

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

$ chmod 644 имя_файла

Только пользователь root, владелец файла или пользователь с правами sudo могут изменять права доступа к файлу.

Для рекурсивного изменения прав всех файлов и папок в заданном каталоге, используйте команду chmod с опцией -R :

$ chmod -R 755 имя_каталога

Команда chown

Команда chown (от англ. «change owner») позволяет изменить владельца и группу заданного файла, каталога или символьной ссылки.

Чтобы изменить владельца файла, достаточно выполнить:

$ chown имя_пользователя имя_файла

Чтобы изменить как владельца, так и группу файла, вызовите:

$ chown имя_пользователя:имя_группы имя_файла

Используйте опцию -R , чтобы рекурсивно обработать все файлы и каталоги в заданном каталоге:

$ chown -R имя_пользователя:имя_группы имя_каталога

Команда sudo

Команда sudo (от англ. «Substitute User and do« = «подменить пользователя и выполнить») позволяет запускать программы от имени другого пользователя (по умолчанию, используется пользователь root). Использование команды sudo , вместо входа в систему под учетной записью пользователя root, более безопасно, поскольку вы можете предоставить ограниченные административные привилегии отдельным пользователям, не зная пароля пользователя root.

Чтобы использовать sudo , просто добавьте префикс sudo перед командой:

Управление пользователями и группами

Команда uname

Команда uname с опцией -a выведет подробную информацию о вашей системе: имя машины, версия операционной системы, ядра и т.д.

Linux debian 5.10.0-6-amd64 #1 SMP Debian 5.10.28-1 (2021-04-09) x86_64 GNU/Linux

Команды useradd и passwd

Команда useradd позволяет создавать новых пользователей. Чтобы создать новую учетную запись пользователя, вызовите команду useradd вместе с именем нового пользователя:

После создания пользователя установите ему пароль, выполнив команду passwd:

Команда userdel

Команда userdel используется для удаления учетной записи пользователя:

Опция -r удаляет домашний каталог пользователя и связанные с ним данные:

$ userdel -r имя_пользователя

Команды groupadd и groupdel

Команда groupadd используется для создания новой группы. Просто укажите название группы в качестве параметра:

Чтобы удалить группу, используйте команду groupdel с именем группы в качестве параметра:

Команда usermod

Чтобы добавить существующего пользователя в группу, используйте команду usermod с опцией -G и именем группы:

$ usermod -a -G sudo ravesligroup

Управление процессами

Команда top

Команда top отображает в режиме реального времени список запущенных процессов, их числовые идентификаторы (сокр. «PID» от англ. «Process IDentificator») и насколько сильно каждый из них нагружает CPU:

Команда kill

Если у вас есть зависшая программа, то вы можете вручную завершить её работу, послав с помощью команды kill соответствующий сигнал.

Всего существует 64 различных сигнала, но самыми популярными являются два:

SIGTERM (15) — сигнал завершения работы программы, при котором ей дается некоторое время, чтобы сохранить свой прогресс и данные.

SIGKILL (9) — сигнал, требующий от программы немедленного завершения. Все несохраненные данные при этом будут потеряны.

Например, зная PID нужного вам процесса, послать ему сигнал можно следующим образом:

В этом примере параметр -9 отвечает за сигнал SIGKILL (9), а 3501 — это идентификатор (PID) нужного вам процесса.

Работа с сетью

Команда ping

Команда ping применяется в тех случаях, когда необходимо проверить состояние подключения к серверу. Например:

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

Команда wget

Команда wget пригодится вам, если вы собираетесь загрузить из Интернета какие-либо файлы (или страницы сайтов). Она поддерживает протоколы HTTP, HTTPS, FTP, а также работу через прокси-серверы. Для загрузки нужного вам файла просто передайте его адрес в качестве параметра команде wget :

Команда hostname

Команда hostname используется для проверки имени вашего хоста. Добавление опции -I в её конец покажет его IP-адрес.

Работа с текстом

Команда head

Команда head используется для просмотра первых строк любого текстового файла. По умолчанию она будет показывать первые десять строк, но с помощью опции -n вы можете изменить это число. Например, для отображения только первых пяти строк, введите:

$ head -n 5 filename.txt

Команда tail

Команда tail отображает последние десять строк текстового файла:

$ tail -n filename.txt

Команда diff

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

$ diff file1.txt file2.txt

Команда grep

Команда grep (от англ. «search globally for lines matching the regular expression, and print them») позволяет искать указанный текст в указанном файле, например:

$ grep blue notepad.txt

Вышеприведенная команда будет искать слово blue в файле notepad.txt и выведет все строки, в которых содержится искомое слово.

Команда echo

Команда echo используется для вывода в терминал строки, указанной ей в качестве параметра. Часто команда echo применяется для перемещения некоторых данных в файл. Например, если вы хотите добавить строку «Hello, world!» в файл с именем name.txt, выполните:

$ echo «Hello, world!» >> name.txt

Команда cat

Команда cat (от англ. «concatenate») склеивает файлы, а также позволяет вывести на экран содержимое одного или нескольких файлов. Чтобы отобразить содержимое файла, необходимо указать его имя в качестве параметра команды cat :

Установка и удаление пакетов

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

Только root или пользователь с привилегиями sudo может устанавливать и удалять пакеты.

apt (Ubuntu и Debian)

apt (от англ. «Advanced Package Tool») — это система управления пакетами, используемая дистрибутивами на базе Debian. В дистрибутивах на базе Debian существует несколько инструментов управления пакетами с помощью командной строки, причем наиболее часто используются apt и apt-get.

Перед установкой нового пакета сначала необходимо обновить информацию о пакетах:

Индекс apt — это база данных, содержащая записи доступных в репозиториях пакетов, подключенных в вашей системе.

Чтобы обновить установленные пакеты до последних версий, выполните:

Установка пакетов так же проста:

$ apt install имя_пакета

Чтобы удалить установленный пакет, введите:

$ apt remove имя_пакета

dnf (CentOS и Fedora)

rpm (сокр. от англ. «Red Hat Package Manager») — это мощная система управления пакетами, используемая в дистрибутивах от Red Hat и производных дистрибутивах, таких как: CentOS и Fedora. С rpm также связаны команда rpm и .rpm-формат пакетов.

Чтобы установить новый пакет в дистрибутивах от Red Hat, вы можете использовать команду yum или dnf:

$ dnf install имя_пакета

Начиная с CentOS 8, dnf заменил yum в качестве менеджера пакетов по умолчанию, при этом dnf обратно совместим с yum .

Чтобы обновить установленные пакеты до последних версий, введите:

Удаление пакетов так же просто, как:

$ dnf remove имя_пакета

Справка

Параметр help

Большинство команд имеют параметр —help , при помощи которого выводится короткое сообщение о том, как использовать указанную команду:

Команда man

Почти все команды в Linux распространяются вместе с man-страницами (от англ. «manual») — документация, которая объясняет, что делает команда, приводит примеры ее использования и сообщает какие параметры и опции она поддерживает.

Команда man применяется для отображения страницы руководства по заданной команде:

Например, чтобы открыть главную страницу справки по команде cd , вы должны ввести:

Для навигации по справочным страницам используйте клавиши со стрелочками вверх и вниз. Также вы можете нажать:

клавишу Enter для перемещения на одну строку за раз;

клавишу (Пробел) для перехода к следующему экрану;

клавишу b для возврата на один экран назад;

клавишу q для выхода из справочной страницы.

Команда history

Если вы используете Linux в течение определенного периода времени, вы быстро заметите, что можете выполнять десятки (если не сотни) команд каждый день. Таким образом, запуск команды history особенно полезен, если вы хотите просмотреть ранее введенные команды:

Команда whereis

Команда whereis отображает полный путь к исполняемому файлу программы (или к исходным файлам, если они присутствуют в системе). Например:

gcc: /usr/bin/gcc /usr/lib/gcc /usr/share/gcc

Дополнительно

Команда clear используется для очистки терминала, если он загроможден слишком большим количеством данных от прошлых команд

Нажатие на клавишу TAB (табуляция) приведет к автоматическому дополнению того, что вы в данный момент набираете в терминале. Например, если вам нужно перейти в папку Documents, то начните вводить команду cd Docu , а затем нажмите на клавишу TAB и терминал автоматически дополнит команду до cd Documents .

Сочетания клавиш:

Ctrl+C — останавливает и завершает команду;

Ctrl+Z — ставит выполнение команды на паузу;

Ctrl+S — временно приостанавливает вывод информации в терминал;

Ctrl+Q — продолжает вывод информации в терминал;

Ctrl+A — перемещает вас в начало строки;

Ctrl+E — перемещает вас в конец строки.

Вы можете запускать несколько команд в одной строке, отделяя их с помощью символа ; , например:

$ команда1; команда2; команда3

Если вместо ; использовать && , то следующая команда выполнится только после успешного выполнения предыдущей.

Команды Linux, Которые Должен Знать Каждый Пользователь

Большинство людей думают, что Linux — это сложная операционная система, которая используется только программистами. Но на самом деле это не так. К тому же базовые команды Linux довольно понятны и просты.

Linux — это целое семейство операционных систем Unix с открытым исходным кодом, основанных на ядре Linux. Сюда входят все самые популярные системы на основе Linux, такие как Ubuntu, Fedora, Mint, Debian и другие. Если быть точным, их называют дистрибутивами.

С тех пор как Linux был впервые выпущен в 1991 году, он продолжал набирать популярность благодаря открытому исходному коду. Люди могут свободно модифицировать и распространять его под своим именем.

При работе с ОС Linux вам нужно использовать оболочку — интерфейс, который даёт вам доступ к службам операционной системы. В большинстве дистрибутивов Linux для удобства в качестве оболочки используется графический интерфейс пользователя (GUI).

При этом рекомендуется использовать интерфейс командной строки (CLI), так как он более мощный и эффективный. Задачи, для решения которых в графическом интерфейсе понадобиться много этапов, можно выполнить за считанные секунды, вводя команды в CLI.

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

1. Команда pwd

Используйте команду pwd, чтобы узнать путь к текущему рабочему каталогу (папке), в котором вы находитесь от корневого каталога. Команда вернёт абсолютный (полный) путь, который по сути является путём всех каталогов, начинающийся с косой черты (/). Примером абсолютного пути является /home/username.

2. Команда cd

Для навигации по файлам и каталогам Linux используйте команду cd. Она требует либо полный путь, либо имя каталога, в зависимости от текущего рабочего каталога, в котором вы находитесь.

Допустим, вы находитесь в /home/username/Documents и хотите перейти в Photos, подкаталог Documents. Для этого просто введите следующую команду: cd Photos.

Другой сценарий, если вы хотите перейти в совершенно новый каталог, например, /home/username/Movies. В этом случае вам нужно ввести cd, а затем абсолютный путь к каталогу: cd/home/username/Movies.

Также есть несколько шорткодов для более быстрой навигации:

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

Также стоит отметить, что оболочка Linux чувствительна к регистру. Важно точно вводить имена каталогов.

3. Команда ls

Команда ls используется для просмотра содержимого каталога. По умолчанию эта команда отобразит содержимое вашего текущего рабочего каталога.

Если вы хотите просмотреть содержимое других каталогов, введите ls, а затем путь к каталогу. Например, введите ls /home/username/Documents для просмотра содержимого в Documents.

Варианты использования команды Linux ls:

  • ls -R также выведет список всех файлов в подкаталогах
  • ls -a покажет скрытые файлы
  • ls -al выведет список файлов и каталогов с подробной информацией, такой как разрешения, размер, владелец и т. д.

4. Команда cat

cat (сокращение от concatenate) — одна из наиболее часто используемых команд в Linux. Используется для вывода содержимого файла в командной строке (sdout). Чтобы запустить эту команду, введите cat, а затем имя файла и его расширение. Например: cat file.txt.

Вот другие варианты использования команды Linux cat:

  • cat> filename создаёт новый файл
  • cat filename1 filename2>filename3 объединяет два файла (filename1 и filename2) и сохранит их содержимое в новом файле filename3
  • Чтобы преобразовать файл в верхний или нижний регистр, cat filename | tr a-z A-Z >output.txt

5. Команда cp

Используйте команду cp для копирования файлов из текущего каталога в другой каталог. Например, команда cp cats.jpg/home/username/Pictures создаст копию cats.jpg (из вашего текущего каталога) в каталог Pictures.

6. Команда mv

Основное предназначение команды mv — перемещение файлов, хотя её также можно использовать для их переименования.

Аргументы в mv похожи на аргументы команды cp. Вам нужно ввести mv, имя файла и каталог назначения. Например: mv file.txt/home/username/Documents.

Команда Linux для переименования файлов будет выглядеть так: mv old_name.ext new_name.ext.

7. Команда mkdir

Используйте команду mkdir, чтобы создать новый каталог. Если вы введёте mkdir Music, команда создаст каталог с именем Music.

Дополнительные команды mkdir:

  • Чтобы создать новый каталог внутри другого каталога, используйте эту базовую команду Linux mkdir Photos/Nature;
  • Используйте опцию p (parents), чтобы создать каталог между двумя существующими каталогами. Например, mkdir -p Photos/Nature/Ocean создаст новый каталог «Nature»

8. Команда rmdir

.Если вам нужно удалить каталог, используйте команду rmdir. Однако rmdir позволяет удалять только пустые директории.

9. Команда rm

Команда rm используется для удаления каталогов и содержимого внутри них. Если вы хотите удалить только каталог, в качестве альтернативы rmdir используйте rm -r.

Примечание: будьте очень осторожны с этой командой и всегда проверяйте, в каком каталоге вы находитесь. Она удаляет всё и её невозможно отменить.

10. Команда touch

Команда touch позволяет создать новый пустой файл через командную строку Linux. В качестве примера введите touch /home/username/Documents/index.html, чтобы создать файл HTML с названием index в каталоге Documents.

11. Команда locate

Используйте эту команду, чтобы найти нужный вам файл. Она работает, как команда поиска в Windows. Более того, аргумента -i сделает команду нечувствительной к регистру, благодаря чему вы сможете искать файлы, даже если вы не помните их точные названия.

Чтобы найти файл, содержащий два или более слов, используйте звёздочку (). Например, команда locate -i schoolnote будет искать любой файл, содержащий слова «school» и «note», не зависимо от того написаны они с большой или маленькой буквы.

12. Команда find

Подобно команде locate, find также выполняет поиск файлов и каталогов. Разница в том, что команда find используется для поиска файлов в текущем каталоге.

Например, команда find /home/-name notes.txt будет искать файл с именем notes.txt в домашнем каталоге и его подкаталогах.

Другие варианты использования команды Linux find:

  • Для поиска файлов в текущем каталоге используйте find . -name notes.txt
  • Для поиска каталогов используйте / -type d -name notes. txt

13. Команда grep

Ещё одна базовая команда Linux, которая, несомненно, пригодится для повседневного использования — grep. С её помощью совершается поиск по всему тексту в текущем файле.

Например, grep ubuntu notepad.txt будет искать слово ubuntu в файле notepad. Строки, содержащие искомое слово, будут отображаться полностью.

14. Команда sudo

Сокращенно от «SuperUser Do», эта команда позволяет выполнять задачи, требующие прав администратора или root. Однако не рекомендуется использовать эту команду для повседневных задач, так как неправильное её использование может легко стать причиной появления ошибок.

15. Команда df

Используйте команду df, чтобы получить отчёт об использовании дискового пространства в системе в процентах и килобайтах. Если вы хотите просмотреть отчёт в мегабайтах, введите df -m.

16. Команда du

Если вы хотите проверить, сколько места занимает файл или каталог, воспользуйтесь командой du (Disk Usage). Однако вместо размера в обычном формате, в сводке вы увидите количество блоков диск. Если вы хотите посмотреть информацию в байтах, килобайтах и мегабайтах, добавьте аргумент -h в командную строку.

17. Команда head

Команда head используется для просмотра первых строк любого текстового файла. По умолчанию она покажет первые десять строк, но вы можете изменить это число. Например, если вы хотите показывать только первые пять строк, введите head -n 5 filename.ext.

18. Команда tail

Эта команда имеет функцию, аналогичную команде head, но вместо отображения первых строк tail выводит последние десять строк текстового файла. Например, tail -n filename.ext.

19. Команда diff

Являясь сокращением от английского слова difference (разница), команда diff сравнивает содержимое двух файлов построчно. После анализа файлов будут выведены строки, которые не совпадают. Программисты часто используют эту команду, когда им нужно внести изменения в программу, не переписывая весь исходный код.

Простейшая форма этой команды — diff file1.ext file2.ext.

20. Команда tar

Команда tar является наиболее часто используемой командой для архивирования нескольких файлов в tarball — общий формат файлов Linux, аналогичный формату zip, при этом сжатие является опциональным.

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

21. Команда chmod

chmod — ещё одна команда Linux, используемая для изменения разрешений на чтение, запись и выполнение файлов и каталогов.

22. Команда chown

В Linux все файлы принадлежат конкретному пользователю. Команда chown позволяет изменить или перенести владельца файла на указанное имя пользователя. Например, chown user file.txt сделает user владельцем file.txt.

23. Команда jobs

Команда jobs отображает все текущие задачи вместе с их статусами. Задача — это процесс, запущенный в фоновом режиме.

24. Команда kill

Если у вас есть не отвечающая программа, вы можете завершить её вручную, используя команду kill. Команда отправит определённый сигнал неверно работающему приложению и даст ему команду прекратить работу.

В общей сложности вы можете использовать шестьдесят четыре сигнала, но люди обычно используют только два сигнала:

  • SIGTERM (15) — просит программу прекратить работу и даёт ей некоторое время, чтобы сохранить весь прогресс. Если вы не указали сигнал при вводе команды kill, этот сигнал будет использоваться по умолчанию.
  • SIGKILL (9) — принудительно останавливает программы. Несохранённый прогресс будет потерян.

Помимо знания сигналов, вам также необходимо знать числовой идентификатор процесса (PID) программы, которую вы хотите уничтожить. Если вы не знаете PID, просто запустите команду ps ux.

Узнав, какой сигнал вы хотите использовать и PID программы, введите следующий синтаксис:

kill [опция сигнала] PID.

25. Команда ping

Используйте команду ping для проверки состояния подключения к серверу. Например, просто введя ping google.com, команда проверит, можете ли вы подключиться к Google, а также измерить время ответа.

26. Команда wget

Командная строка Linux очень полезна — вы даже можете загружать файлы из интернета. Сделать это можно с помощью команды wget. Для этого просто введите wget и ссылку для скачивания.

27. Команда uname

Команда uname, сокращение от Unix Name, выведет подробную информацию о вашей системе Linux, такую как имя машины, операционная система, ядро и т. д.

28. Команда top

Являясь эквивалентом диспетчера задач в Windows, команда top выводит список запущенных процессов, а также информацию о том, сколько ЦП использует каждый процесс. Отслеживать использование системных ресурсов очень полезно. Таким образом, вы сможете определить какой процесс необходимо прекратить, поскольку он потребляет слишком много ресурсов.

29. Команда history

Регулярно пользуясь Linux, вы заметите, что запускаете сотни команд каждый день. Команда history позволяет просмотреть команды, которые вы вводили ранее.

30. Команда man

Неуверены в функциях некоторых команд Linux? Не беспокойтесь, вы можете легко научиться использовать их прямо из оболочки Linux с помощью команды man. Например, man tail покажет инструкцию к команде tail.

31. Команда echo

Эта команда используется для перемещения некоторых данных в файл. Например, если вы хотите добавить текст «Здравствуйте, меня зовут Джеймс» в файл с именем name.txt, введите echo Здравствуйте, меня зовут Джеймс » name.txt.

32. Команда zip, unzip

Используйте команду zip для сжатия ваших файлов в zip-архив, а команду unzip для извлечения zip-файлов из zip-архива.

33. Команда hostname

Если вы хотите узнать имя вашего хоста/сети, просто введите hostname. Добавление -I в конце выведет IP-адрес вашей сети.

34. Команда useradd, userdel

Поскольку Linux является многопользовательской системой, это означает, что более чем один человек может взаимодействовать с одной и той же системой одновременно. useradd используется для создания нового пользователя, в то время как passwd добавляет пароль к учётной записи этого пользователя. Чтобы добавить нового пользователя с именем Джон, введите useradd John. А затем, чтобы добавить пароль, напишите passwd 123456789.

Процесс удаления пользователя напоминает его добавление. Чтобы удалить учётную запись, введите команду userdel ImiaPolzovatelia.

Бонусные Советы и Приёмы

Используйте команду clear для очистки терминала, если он перегружен предыдущими командами.

Попробуйте кнопку TAB для автозаполнения того, что вы печатаете. Например, если вам нужно набрать Documents, начните вводить команду (например, cd Docu, затем нажмите клавишу Tab), и терминал заполнит всё остальное, показывая вам полную фразу cd Documents.

Комбинации клавиш Ctrl+C и Ctrl+Z используются для остановки любой команды, которая работает в данный момент. Ctrl+C останавливает программу, а Ctrl+Z — ставит её на паузу.

Если вы случайно заморозили терминал, нажав Ctrl+S, просто отмените это с помощью комбинации Ctrl+Q.

Ctrl+A перемещает вас в начало строки, а Ctrl+E — в конец.

Вы можете запустить несколько команд в одной команде, используя «;», чтобы отделить их. Например Command1; Command2; Command3. Или &&, если вы хотите, чтобы следующая команда запускалась только тогда, когда предыдущая будет успешной.

Подводим Итоги

Основные команды Linux помогают пользователям легко и эффективно выполнять повседневные задачи. Чтобы запомнить базовые команды Linux, может потребоваться некоторое время, но нет ничего невозможного, особенно если вы постоянно практикуетесь.

В любом случае знание основных команд Linux, несомненно, принесёт вам пользу. Удачи!

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

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