Основные команды терминала Ubuntu
Всегда удобно иметь под рукой список команд терминала … мало ли что 🙂
ifconfig — показать информацию о сети
iwconfig — показать информацию о беспроводной сети
sudo iwlist scan — поиск беспроводных сетей
sudo /etc/init.d/networking restart — перезапустить сеть
/etc/network/interfaces — файл для ручной настройки сети
ifup interface — включить интерфейс
ifdown interface — отключить интерфейс
ping host — пропинговать host и вывести результат
whois domain — получить информацию whois для domain
wget file — скачать file
ifconfig eth0″ — показать конфигурацию сетевого интерфейса eth0
ifup eth0″ — активировать интерфейс eth0
ifdown eth0″ — деактивировать интерфейс eth0
ifconfig eth0 promisc» — перевести интерфейс eth0 в promiscuous-режим для «отлова» пакетов (sniffing)
ifconfig eth0 -promisc» — отключить promiscuous-режим на интерфейсе eth0
dhclient eth0″ — активировать интерфейс eth0 в dhcp-режиме.
route -n» — вывести локальную таблицу маршрутизации
route add -net 0/0 gw IP_Gateway» — задать ip-адрес шлюза по умолчанию (default gateway)
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1″ — добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1
echo «1» > /proc/sys/net/ipv4/ip_forward» — разрешить пересылку пакетов (forwarding)
hostname» — отобразить имя компьютера
ip link show» — отобразить состояние всех интерфейсов
mii-tool eth0″ — отобразить статус и тип соединения для интерфейса eth0
ethtool eth0″ — отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединения
netstat -tupn» — отображает все установленные сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, обеспечивающих эти соединения
tcpdump tcp port 80″ — отобразить весь трафик на TCP-порт 80 (обычно — HTTP)
iwlist scan» — просканировать эфир на предмет, доступности беспроводных точек доступа
iwconfig eth2″ — показать конфигурацию беспроводного сетевого интерфейса eth2
cat /proc/net/dev — показать сетевые интерфейсы и статистику по ним
pontin.ru
Терминал | Русскоязычная документация по Ubuntu
Итак, давайте сначала посмотрим что из себя представляет этот самый терминал. Найти его можно в меню Приложения→Стандартные. Запустив его вы увидите примерно такое окошечко:
Знакомьтесь, это и есть терминал. Он создан для того, чтобы выполнять текстовые команды, поэтому отложите свою мышку в сторону и пододвиньте поближе клавиатуру.
Управление терминалом
Давайте выполним какую-нибудь командочку, например:
lsb_release -a 2> /dev/null | grep -P "(?<=Codename:)(.*)"
Вот что должно было получиться:
Набирать такие команды с клавиатуры посимвольно немного неудобно, поэтому давайте сразу разберёмся с основами управления терминалом. Начнём с копирования/вставки. Стандартные сочетания клавиш Ctrl+C и Ctrl+V в терминале не работают, вместо них используется старая добрая пара Ctrl+Insert с Shift+Insert или же сочетания с Shift: Ctrl+Shift+C для копирования и Ctrl+Shift+V для вставки. Что ж, теперь вы умеете целиком копировать команды из руководств.
Однако обычно всё-таки команды приходится набирать вручную, а не вставлять откуда-то. И вот тут на помощь приходит великолепное свойство терминала, называемое автодополнением. Наберите в терминале символы
, а потом нажмите клавишу Tab. Терминал автоматически дополнит за вас команду. Кстати, aptitude
— это основная консольная утилита управления установкой и удалением приложений, но об этом после.
А теперь попробуйте набрать только apt
и нажать Tab. Ничего не происходит? А теперь нажмите Tab два раза подряд. Видите, терминал выдал вам список всех команд, начинающихся с apt
.
Удобно, не правда ли? Особенно если привыкнуть.
Автодополнение в терминале работает практически везде, и не только для команд, но так же для их аргументов и имён файлов. Поэкспериментируйте с ним, оно значительно сокращает время набора, да и вообще, терминал без автодополнения — это не терминал.
Работа с файлами
Начну рассказ наверно с того, что в любой момент времени работы в терминале вы находитесь в некотором каталоге. При запуске терминала текущей директорией является домашний каталог пользователя, но потом вы конечно можете её поменять.
Узнать, в какой же папке вы сейчас находитесь, очень просто, достаточно посмотреть на приглашение терминала, то есть на те символы, которые печатаются автоматически в начале каждой строки:
Текущий каталог — это то, что между символами :
и $
. Кстати, обратите внимание, перед :
стоит имя пользователя и имя компьютера, разделённые символом @
. Но когда вы запускаете терминал, то между :
и $
стоит символ ~
:
Я говорил, что при запуске терминала текущим каталогом становится домашняя папка пользователя, так вот, символ ~
— это синоним адреса домашней папки текущего пользователя1). Кстати, если вы ещё не знаете, полный адрес домашнего каталога выглядит как
/home/логин_пользователя
У меня это /home/malamut
Хорошо, как выяснить текущее местоположение, вроде разобрались, а как же его сменить? Для этого предназначена команда cd
, выполните, например, команду
cd Музыка
Видите, текущее местоположение изменилось:
На всякий случай напоминаю, что имена файлов и каталогов в Linux чувствительны к регистру символов, то есть Музыка
и музыка
— эта два совершенно разных имени.
После команды cd
можно указывать как полные пути относительно корня, так и относительные, отсчитывающиеся от текущего каталога. В примере выше я использовал относительный путь. А вот полный:
cd /etc/apt
Хочу сразу обратить внимание на несколько важных особенностей. Во-первых, при наборе путей так же работает автодополнение по \
. Вот так:
cd Каталог\ с\ плохими\ символами\ в\ имени\<\>
Установка обратного слеша перед некоторыми символами называется экранированием. Кстати, при использовании автодополнения все слеши расставляются автоматически. Кроме того, можно просто заключить путь в двойные кавычки:
cd "Каталог с плохими символами в имени<>"
Но в этом случае автодополнение работать не будет.
Заменитель адреса домашнего каталога ~
можно использовать и при наборе путей, например:
cd ~/Музыка
А для перемещения непосредственно в домашний каталог достаточно просто набрать cd
без аргументов.
Для перемещения на каталог выше можно использовать команду
cd ..
Вообще, две точки обозначают всегда родительский каталог, поэтому можно делать так:
cd ../..
В принципе, всё можно как угодно комбинировать, в разумных пределах, конечно. Ну и напоследок про cd
. Переместиться в предыдущий посещённый каталог можно командой
cd -
В качестве наглядного примера использования cd
небольшое путешествие по моему компьютеру:
Как перемещаться по каталогам в первом приближении вроде разобрались, теперь же я расскажу про некоторые другие полезные операции. Посмотреть содержимое текущего каталога можно командой ls
:
Обычно командам можно передавать различные модификаторы, например:
Кстати, эта команда показывает различную дополнительную информацию о содержимом каталога.
Очень часто параметрами команд являются имена файлов или папок, именно для этого я так подробно рассказывал о способе перемещения по каталогам и использования различных имен файлов в качестве аргументов. Например, команда
показывает содержимое текстового файла, и если вы хотите посмотреть содержимое файла test.txt
, лежащего в вашем домашнем каталоге, то вы могли бы выполнить команду
cat ~/text.txt
Получение справки
Начинающих пользователей Linux очень часто любят пугать так называемыми манами. Дело в том, что man
— это система справки о командах для терминала. Пользоваться ей очень легко, просто наберите в терминале
man команда
Например:
man ls
Появится собственно текст справки2), разбитый на разделы. Перемещаться по нему можно с помощью стрелок и клавиш PgUp и PgDown, а для выхода просто нажмите Q.
Кроме man-страниц у многих утилит3) есть встроенная справка, которую обычно можно посмотреть, запустив программу с ключом --help
:
утилита --help
Например:
ls --help
Есть и другие способы получения помощи, например похожая на man
утилита info
. Но чаще всего наиболее полную информацию о программе можно получить именно из man-страниц, а краткую справку — указав ключ --help
при вызове4).
Разные полезности терминала
На всякий случай немного коснусь ещё одной темы. Бывает так, что вы что-то запустили в терминале и хотите прервать работу этого чего-то. Обычно это сделать очень просто, достаточно нажать на клавиатуре сочетание клавиш Ctrl+C5).
Есть и другие управляющие сочетания, например Ctrl+D посылает сигнал конца файла запущенному приложению, а без запущенных утилит делает тоже, что и терминальная команда exit
. Ну а если вы хотите более подробно управлять работающими программами, то посмотрите на системный монитор htop
, который, правда, нужно доустанавливать отдельно.
История введённых команд
Напоследок хочу лишь сказать, что терминал хранит историю введённых пользователем команд, которую вы можете листать в реальном режиме стрелками вверх и вниз на клавиатуре. Это очень удобно для повторного исполнения введённых ранее команд. А посмотреть всю историю можно командой
history
У каждой команды в истории есть номер, выполнить снова команду с определённым номером можно набрав в терминале восклицательный знак и номер нужной команды:
А повторить предыдущую набранную команду можно просто написав два восклицательных знака !!
.
Мне кажется, что с непривычки уже всё описанное может показаться дремучим лесом, а на самом деле это только самая верхушка айсберга, существуют ещё тысячи полезных команд и интересных приёмов работы в терминале. С помощью терминала можно редактировать файлы, слушать музыку, смотреть видео и выполнять ещё массу повседневных операций, но описание всего этого выходит далеко за рамки данной статьи.
На этом я пожалуй закончу краткое введение в богатейший мир консольных команд Linux и продолжу рассказывать про оставшиеся основные особенности этой многогранной операционной системы:
help.ubuntu.ru
Окно терминала | |
clear | Очищение экрана терминала. |
history | Показать последние набранные команды. |
! | Выполнить последнюю команду. Вы также можете использовать !n чтобы повторить n команд или !-n чтобы посторить команду n команд назад. |
man | Отображает оперативное руководство для команды. |
whatis | Поиск man-страниц с указанным ключевым целым словом. |
alias | Определяет аббревиатуру для длинной команды. |
exit | Выход из терминала. |
Управление файлами и каталогами | |
cd | Изменяет каталог. Используется для навигации по папкам. |
pwd | Отображает текущий рабочий каталог. |
cd | Изменяет текущий каталог. |
ls | Отображает оглавление каталога. |
cp | Копирует файлы. |
mv | Переименовывает файл либо перемещает файл из одного каталога в другой. |
rm | Уничтожает файлы. |
stat | Показывает, когда файл был изменен. |
touch | Изменяет метку времени файла. |
rmdir | Уничтожает каталоги. |
mkdir | Создает каталог. |
rename | Изменяет имя файла или группы файлов. |
find | Поиск файлов на основе заданного критерия. |
locate | Поиск файлов с помощью периодически обновляемой базы данных. |
grep | Поиск в текстовом файле с помощью регулярных выражений. |
mount | Добавляет устройства к файловой системе. |
umount | Отключает устройства из файловой системы. |
cat | Отображает файл на стандартном устройстве вывода (используется также для конкатенации файлов). |
chmod | Изменяет права доступа одного или нескольких файлов. |
chown | Изменяет владельца или группового владельца файла. |
Пользователи | |
su | Смена пользователя. Также дает доступ к системным правам. |
whoami | Выводит действительный идентификатор пользователя. |
id | Выводит идентификатор пользователя, идентификатор группы и группы пользователя. |
passwd | Создание или изменение пароля пользователя. |
Системное администрирование | |
uname | Выводит системную информацию, такую как тип машины и операционной системы. |
sudo | Предоставляет возможность пользователям выполнять команды от имени суперпользователя root либо других пользователей. |
apt/dnf/pacman | Команды для установки программного обеспечения и обновлений. Какой из них будет использоваться, зависит от вашей операционной системы на базе Linux. Для каждой из них требуются права администратора и дополнительные инструкции, такие как sudo apt install program-name. |
jobs | Отображает состояние всех текущих заданий. Задание — это представление выполняемого процесса или группы процессов. |
bg | Отправляет задание в фон. |
fg | Отправляет задание на передний план. |
kill | Завершает процесс по идентификатору. |
killall | Завершает все процессы с указанным именем. |
ps | Выводит список выполняемых процессов. |
top | Выводит список процессов по степени загрузки системы. В отличие от ps выводит список в реальном времени. |
uptime | Отображает время непрерывной работы системы. |
whereis | Производит поиск исходного текста, двоичного файла и man-страницы для команды. |
df | Подсчитывает объем свободной и доступной дисковой памяти. |
free | Отображает количество свободной памяти в системе. |
Администрирование сети | |
ip | Отображает IP адрес, сетевые интерфейсы, пропускную способность и др. |
ping | Отправка или получение данных с другого компьютера в сети. Часто используется для проверки наличия сетевого соединения и скорости этого соединения. |
dig | Поиск DNS адреса. |
wget | Загружает файл. |
ssh | Безопасное подключение и вход в удаленную сеть. |
Разное | |
echo | Отображение строки текста. Часто используется в программах и скриптах для передачи информации пользователям. |
factor | Отображает возможные множители десятичного числа. |
expr | Решение математических уравнений. |
look | Поиск слова в словаре. |
omgubuntu.ru
Команды терминала Linux | Losst
Терминал — это без преувеличения самый мощный инструмент Linux, с помощью него можно сделать все что угодно в этой операционной системе. Вы можете устанавливать программы, управлять текстом, работать с файлами, слушать музыку, настраивать различные сервисы и это еще далеко не полный список. Для управления любым процессом используются команды.
В интернете существует множество статей, в которых описаны лучшие команды, самые полезные команды, основные команды linux и так далее, в том числе такие статьи есть на нашем сайте. Но нет обобщенной информации обо всех командах. В этой статье мы собрали почти все команды терминала Linux с небольшим описанием для каждой из них, если на сайте уже есть статье по данной команде, то здесь вы найдете на нее ссылку. Список команд Linux отсортирован в алфавитном порядке.
Команды терминала Linux
Команда — это имя программы, которое вводится в терминале для ее запуска, вместе с именем в команде могут присутствовать данные и параметры. Дальше мы рассмотрим большинство известных команд linux с кратким описанием. Поехали!
- a2p — конвертировать awk скрипт в программу на perl;
- ac — вывести статистику по времени работы пользователя в системе;
- addgroup — добавить новую группу в систему;
- adduser — добавить нового пользователя;
- agrep — версия утилиты grep, которая может обрабатывать усредненные паттерны;
- alias — создание псевдонимов для команды консоли linux;
- apropos — поиск по ключевому слову или регулярному выражению в страницах справки man;
- apt — поиск, установка и удаление программ в Ubuntu;
- aptitude — текстовая оболочка для apt, позволяет управлять программным обеспечением, используется по умолчанию в Debian;
- ar — утилита для создания, модификации и извлечения файлов из архивов ar;
- arch — отображает информацию об архитектуре системы;
- arp — управление таблицей ARP кэша;
- as — ассемблер;
- aspell — интерактивная проверка орфографии;
- at — запланировать запуск команды на нужное время;
- awk — утилита для фильтрации текста на основе регулярных выражений и языка программирования AWK;
- basename — удаляет информацию о директории из имени файла;
- bash — интерпретатор команд Bourne Again Shell, используется по умолчанию в большинстве дистрибутивов Linux;
- bс — простой консольный калькулятор;
- bdiff — поиск отличий в больших файлах;
- bfs — текстовый редактор, для работы с большими файлами;
- bg — восстановить задачу, свернутую в фоновый режим;
- biff — получить подробную информацию про электронное письмо в терминале;
- break — завершить цикл while, for, foreach или until;
- bs — версия игры Battleship для Linux;
- bye — эквивалент команды exit, используется для выхода из терминала;
- cal — отобразить правильно отформатированный календарь в командной строке;
- calendar — отобразить напоминания и заметки;
- cancel — остановить вывод информации о работе задачи;
- cat — вывести содержимое файла;
- cc — компилятор языка Си;
- cd — изменить рабочую директорию;
- cfdisk — утилита для разметки диска в терминале, более простая в использовании, чем fdisk;
- chdir — аналог cd, меняет текущую директорию на указанную;
- checkeq — процессор языка программирования для описания сравнений;
- checknr — проверка файлов nroff и troff на ошибки;
- chfn — изменить дополнительную информацию о пользователе, такую как номер телефона, имя и так далее;
- chgrp — изменить группу для файла;
- chmod — изменить разрешения для файлов или папок;
- chown — изменить владельца файла;
- chroot — запустить команду или оболочку в другом корневом каталоге, каталог изолирован и команда не может получить из него доступ к внешней системе;
- chsh — изменить оболочку входа;
- cksum — подсчитать и вывести CRC сумму для файла;
- clear — очистить вывод терминала;
- cmp — сравнить два файла побайтно;
- col — команда читает стандартный ввод построчно и передает информацию на вывод с возможностью реверсной подачи бумаги;
- comm — сравнить два небольших файла построчно;
- compress — сжать один или несколько файлов;
- continue — завершить текущую итерацию while, for, foreach и until;
- cp — скопировать файл или папку;
- cpio — создание и распаковка архивов типа cpio;
- crontab — настройка расписаний и заданий планировщика cron;
- csh — командная оболочка C Shell;
- csplit — обрезать часть файла по шаблону;
- ctags — создать файл тегов для исходного кода;
- cu — отправка сигнала другой системе через терминал;
- curl — передача и получение данных с удаленного сервера;
- cut — обрезать определенную часть каждой строки из файла;
- date — отобразить текущую дату и время;
- dc — сложный стековый арифметический калькулятор;
- dd — утилита для копирования бинарных данных из одного места в другое;
- delgroup — удалить группу;
- deluser — удалить пользователя;
- depmod — вывести список всех загруженных модулей ядра и их зависимостей;
- deroff — удалить nroff, troff конструкции из файлов;
- df — посмотреть общее доступное дисковое пространство в системе;
- dhclient — получить динамический ip адрес по DHCP;
- dig — посмотреть информацию о DNS;
- dircmp — сравнение содержимого двух папок;
- dirname — удалить имя файла из адреса, оставить только адрес папки;
- dmesg — вывести последние записи журнала ядра;
- dos2unix — конвертировать текстовые файлы из формата DOS в Unix;
- dpkg — низкоуровневая утилита установки пакетов в Ubuntu;
- dpost — перекодирование файлов из формата troff в PostScript;
- du — отобразить занимаемое каждым файлом место на диске;
- echo — вывести строку текста;
- ed — простой текстовый редактор;
- edit — еще один текстовый редактор;
- egrep — фильтрация текста с учетом регулярных выражений;
- eject — извлечь лоток CD-ROM;
- elm — клиент электронной почты;
- emacs — очень мощный и настраиваемый текстовый редактор;
- emerge — пакетный менеджер Gentoo;
- enable — включение и отключение принтеров LP;
- env — вывести значение переменной окружения;
- eqn — язык программирования для описания сравнений;
- ex — режим редактирования строки редактора Vim;
- exit — завершить сеанс работы с оболочкой;
- expand — заменить символы табуляции на ряд пробелов;
- expr — обработать аргументы как выражение;
- fc — вывод, модификация и выполнение команд из истории;
- fdisk — утилита для разметки диска;
- fg — восстановление программы, свернутой в фоновый режим;
- fgrep — фильтрация текста только по целым строкам;
- file — вывод типа файла;
- find — поиск файлов в файловой системе по разным условиям;
- findsmb — вывести список всех машин, доступных по протоколу SMB;
- finger — вывести дополнительную информацию о пользователе;
- fmt — форматирование и оптимизация текстовых файлов;
- fold — позволяет переносить строки указанной дины из одного файла в другой;
- for — организация цикла со счетчиком для выполнения нескольких команд;
- foreach — выполнять набор команд для каждого из элементов переданного массива;
- free — отобразить свободную оперативную память;
- fsck — проверка файловой системы на ошибки;
- ftp — интерактивная команда для доступа к FTP серверу;
- fuser — позволяет определить какой процесс использует файлы или сокеты;
- gawk — GNU версия утилиты awk;
- gcc — компилятор языка программирования C++;
- getfacl — отобразить информацию про списки контроля доступа для файла;
- gpasswd — управление файлами /etc/group и /etc/passwd;
- gprof — отобразить доступную информацию о профилировании программы;
- grep — фильтрация текста на основе регулярных выражений;
- groupadd — создать новую группу;
- groupdel — удалить группу;
- groupmod — изменение группы;
- gnuzip — распаковка сжатых файлов;
- gview — запускает графическую версию реактора Vim;
- gvim — синоним для gview;
- gzip — создание, изменение, просмотр содержимого и распаковка архивов Gzip;
- halt — немедленно выключить компьютер;
- head — отобразить первые 10 строк из файла;
- help — вывести помощь по командной оболочке;
- history — вывести последние использованные команды linux;
- host — преобразовать имя хоста в ip адрес;
- hostid — вывести цифровой идентификатор для хоста;
- hostname — вывод и настройка текущего имени хоста;
- htop — интерактивный диспетчер задач, который работает в терминале;
- id — вывести информацию о пользователей и его группах;
- ifconfig — вывод и настройка сетевых интерфейсов;
- ifdown — отключить сетевой интерфейс;
- ifquery — выбрать информацию о сетевом интерфейсе;
- ifup — включить сетевой интерфейс;
- info — просмотр документации;
- insmod — загрузить модуль ядра, в параметрах нужно передать файл;
- iostat — статистика нагрузки на процессор и жесткие диски;
- ip — новая утилита для управления сетевыми интерфейсами;
- iwconfig — настройка беспроводных сетевых интерфейсов;
- jobs — вывести список и состояние всех, запущенных в фоне задач;
- join — объединить строки из двух файлов;
- kill — отправить сигнал процессу, например, чтобы его завершить;
- lillall — убить все процессы с указанным именем;
- ksh — командная оболочка Korn Shell;
- last — отобразить историю входов пользователей;
- ld — редактор ссылок на библиотеки для объектов;
- ldd — выводит список зависимостей исполняемого файла и статических объектов;
- less — постраничная прокрутка длинного текста;
- link — создать жесткую ссылку на файл;
- ln — создать символическую ссылку на файл;
- lo — завершить работу с командной оболочкой;
- locate — поиск файлов, используя проиндексированную базу данных;
- login — войти в систему;
- logname — выводит логин пользователя;
- logout — аналог lo;
- losetup — создание и управление виртуальными loop устройствами;
- ls — вывести содержимое каталога;
- lsmod — посмотреть все загруженные модули ядра;
- lsof — посмотреть список всех открытых файлов;
- lzcat — посмотреть содержимое файла, сжатого lzma;
- lzma — сжать или распаковать файл по алгоритму lzma;
- mach — вывести информацию о процессоре;
- mailx — обработать сообщения электронной почты;
- make — выполнить сборку программы из исходников;
- man — просмотр документации;
- merge — объединить содержимое трех файлов в один;
- mesg — отправка сообщений в другой терминал;
- mkdir — создать папку linux;
- mkfs — форматировать раздел в выбранную файловую систему;
- mkswap — форматировать раздел или файл в swap;
- modinfo — вывести информацию про модуль ядра;
- modprobe — загрузить модуль ядра по имени;
- more — еще одна команда для прокрутки длинного текста;
- mount — монтирование разделов;
- mt — управление магнитными кассетами;
- mv — перемещение файлов и каталогов;
- mysql — утилита для управления реляционной базой данных MySQL;
- mysqldump — утилита для создания резервной копии базы данных MySQL;
- nc — инструмент для передачи данных по TCP/IP;
- netstat — вывод информации про сетевые соединения, таблицы маршрутизации, статистику интерфейсов и другое;
- newgrp — дать пользователю права новой группы на время;
- nice — настройка приоритета для команды;
- niscat — отобразить все таблицы NIS и объекты;
- nischmod — изменить права для объекта NIS;
- nischown — изменить владельца объекта NIS;
- nischttl — изменить время жизни пакетов для NIS:
- nisdefaults — отобразить параметры по умолчанию для NIS;
- nistbladm — администрирование таблиц NIS;
- nl — вывод количества строк в файле;
- nmap — сетевой сканер открытых портов и уязвимостей;
- nohup — продолжить выполнение команды, когда сессия терминала будет завершена;
- nroff — форматировать документ для отправки на принтер;
- nslookup — получить информацию DNS об удаленном сервере;
- od — вывести содержимое файла в двоичном формате;
- on — выполнить команду в удаленной системе, но с локальными переменными среды;
- onintr — вывести информацию об аппаратных прерываниях;
- pack — сжатие файлов по алгоритму Хафмана;
- pacman — пакетный менеджер ArchLinux;
- pagesize — отобразить размер страниц памяти в байтах;
- parted — утилита для разметки диска;
- partprobe — проинформировать операционную систему про изменения в таблице разделов;
- passwd — изменить пароль пользователя;
- paste — объединить строки из файлов;
- pax — управление архивами pax;
- pact — вывести содержимое сжатого текстового файла;
- perl — интерпретатор скриптов Perl;
- pg — вывод текстового файла постранично;
- pico — простой текстовый редактор;
- pine — утилита для просмотра почты;
- pkill — убить процесс по его имени, только один;
- poweroff — выключить компьютер;
- pr — подготовить текст к печати;
- printenv — вывести все переменные среды;
- printf — вывести отформатированную строку текста;
- ps — вывести список запущенных процессов;
- pstree — вывести список запущенных процессов в виде дерева;
- pvs — вывести версию и внутреннюю информацию из файла ELF;
- pwd — показать текущую папку;
- quit — завершить сеанс командной оболочки;
- rcp — скопировать файл в удаленную систему;
- readlink — вывести содержимое символической ссылки;
- reboot — перезагрузка компьютера;
- red — запустить ed в режиме прокрутки текста;
- rename — переименовать несколько файлов в Linux;
- repeat — повторять выполнение команды нужное количество раз;
- replace — утилита для замены содержимого в строках;
- rlogin — войти в удаленную систему;
- rm — удалить файл;
- rmdir — удалить папку;
- rmmod — выгрузить модуль ядра;
- route — отобразить таблицу маршрутизации;
- rpcinfo — вывести информацию о RPC;
- rsh — выполнить команду в удаленной системе;
- rsync — быстрый инструмент для копирования и синхронизации файлов с удаленной системой;
- s2p — конвертировать sed скрипт в Perl;
- scp — копирование файлов по ssh;
- screen — консольный менеджер виртуальных терминалов;
- script — записывает все, что выводится на экран;
- sdiff — сравнивает два файла;
- sed — потоковый редактор текста на основе регулярных выражений;
- sendmail — отправить письмо;
- service — управление службами в Ubuntu;
- set — установить значение переменной окружения;
- setfacl — настройка списков контроля доступа для файлов;
- sfdisk — еще одна программа для разметки дисков;
- sftp — клиент для работы с sFTP по защищенному каналу;
- sh — командная оболочка Bourne Shell;
- shred — удалить файл без возможности восстановления;
- shutdown — выключить компьютер или спланировать выключение;
- sleep — ожидать указанное количество секунд;
- slogin — войти в удаленную систему;
- smbclient — консольный клиент для работы с удаленной системой по протоколу SMB;
- sort — сортировка строк в Linux;
- spell — проверка орфографии;
- split — объединение файлов;
- startx — запустить сессию X сервера;
- ss — просмотр информации о сетевых подключениях;
- ssh — подключение к удаленной системе;
- stat — отобразить статистику для файла или файловой системы;
- stop — остановить задачу в фоне;
- strftime — форматировать строку с датой и временем;
- strip — удалить отладочную информацию из исполняемых файлов;
- stty — настройка параметров текущего терминала;
- su — авторизация от имени другого пользователя;
- sudo — выполнить команду от имени другого пользователя;
- swapoff — отключить раздел подкачки;
- swapon — включить раздел подкачки;
- systemctl — управление службами в systemd;
- tabs — остановить работу вкладок в терминале;
- tac — вывести тест, полученный на входе в обратном порядке;
- tail — отобразить последних 10 строк файла;
- talk — отправить сообщение другому, авторизованному пользователю;
- tar — упаковка и распаковка архивов tar;
- tcopy — копирование магнитных кассет;
- tcpdump — консольный сетевой анализатор;
- tcsh — командная оболочка tcsh;
- tee — вывести поток ввода в несколько источников;
- telnet — утилита для подключения к удаленному порту компьютера;
- test — проверка типа файла;
- time — замер времени работы команды консоли linux;
- timex — замер времени работы команды с выводом более подробной информации;
- todos — конвертирование текстовых файлов Unix в формат DOS;
- top — интерактивный консольный менеджер процессов для Linux;
- touch — создать файл;
- traceroute — просмотр маршрута до удаленного узла;
- tree — отобразить содержимое файла в формате дерева;
- tty — вывести имя файла текущего терминала;
- umask — установить маску прав для создания файлов;
- umount — размонтировать раздел;
- unalias — удалить псевдоним;
- uname — посмотреть информацию о системе и ядре;
- uncompress — распаковать сжатый файл;
- uniq — найти количество уникальных строк в файле;
- unlink — удалить ссылку на файл;
- unlzma — распаковать архив lzma;
- unpack — извлечь файлы из архива pack;
- until — организация цикла типа until;
- unxz — извлечь все файлы из архива xz;
- unzip — распаковать zip архив;
- uptime — узнать время работы компьютера;
- useradd — добавить пользователя;
- userdel — удалить пользователя;
- usermod — настройка пользователя;
- vacation — настройка автоматических ответов на email;
- vi — текстовый редактор Vi;
- vim — аналог vi;
- w — посмотреть авторизованных на данный момент пользователей;
- wait — ожидает завершения процесса;
- wall — отправляет сообщение всем авторизованным пользователям;
- wc — подсчет количества строк;
- wget — загрузка файлов из удаленного сервера;
- whereis — просмотр адреса исполняемого файла, исходников и страниц справки для команды;
- which — просмотр пути исполняемого файла для команды;
- while — организация цикла типа while;
- who — посмотреть активных пользователей в системе;
- whoami — вывести текущего пользователя;
- whois — вывести доступную информацию об интернет ресурсе;
- Xorg — исполняемый файл X сервера;
- xargs — позволяет составлять команды на лету;
- xfd — отобразить все символы шрифта X сервера;
- xhost — настройка прав доступа к X серверу;
- xlsfonts — отобразить все шрифты X сервера;
- xrdb — управление базой данных ресурсов X сервера;
- xset — изменить значение переменной X сервера;
- xz — сжать файл в формат xz;
- xzcat — посмотреть содержимое текстового файла сжатого xz;
- yacc — компилятор Yet another compiler-compiler;
- yes — ответить да, на запрос другой команды;
- yppasswd — изменить пароль базы данных NIS;
- yum — пакетный менеджер дистрибутивов Red Hat;
- zcat — вывести содержимое файла, сжатого zip;
- zipcloack — зашифровать zip файл;
- zipinfo — вывести информацию о zip файле;
- zipnote — просмотр и изменение комментариев к zip файлам;
- zipsplit — объединение нескольких zip файлов;
- zypper — менеджер пакетов OpenSUSE.
Выводы
В этой статье мы почти все команды терминала linux, которые вы можете встретить в различных дистрибутивах. Естественно, что этот список может быть неполным, поскольку сложно охватить все утилиты в одной статье. Также здесь нет ответов на все вопросы касаемо этих утилит, но зато статья дает направление для поиска информации и открытия для себя новых возможностей Linux. Если вы знаете другие консольные команды linux, которые поставляются по умолчанию и были упущены в статье, напишите в комментариях!
losst.ru
Справочник базовых команд в терминале Linux с примерами
Работа со справочными страницами
apropos
— поиск справочных страниц по ключевому слову.
aropos [ключевое слово]
apropos user
— поиск мануалов, в описании которых встречается слово «user» (User).
apropos -e delete
— поиск мануалов, в описании которых встречается точное слово «delete».
apropos -w «*create*»
— поиск мануалов по маске, в описании которых встречается слово «create» (creates, created).
info
— аналог команде man, выводит справочные страницы в другом формате.
info [команда] [ключи]
info pwd -o pwdinfo.txt
— вывод справки по команде pwd в файл pwdinfo.txt
man
— вызов страниц из указанного раздела. Вызов справочной страницы о команде.
man [раздел] [заголовок]
man [команда]
manpath
— отображение путей хранения справочных страниц.
whatis
— информация о команде одной строкой.
whatis [ключи] [команда]
type
— определяет тип команды (выполняемая программа, внутренняя команда, функция оболочки, алиас).
type [команда]
type w
=> w is /usr/bin/w
type cd
=> cd is a shell builtin
type sayhi
=> sayhi is a function sayhi(){echo "Hi!"}
type sites
=> sites is aliased to ‘cd /var/www’
help
— короткая справка по встроенным в оболочку командам (builtin).
help [команда]
help cd
— справка по команде cd
help pwd
— справка по команде pwd
help factor
— ничего не выведет, factor — не встроенная команда.
команда —help
— показать доступные флаги для команды.
Работа с историей команд
history
— вывод истории команд (хранится в файле ~/.bash_history
)
!!
— повтор предыдущей команды
sudo !!
— повтор предыдущей команды с правами root.
!число
— повтор команды под определенным номером. Номер можно узнать командой history
.
!1005
— повтор команды под номером 1005.
!строка
— повтор последней команды, которая начинается с слов указанных в строке.
!r
=> rm -rf .* (будьте осторожны применяя эту команду!)
!?строка
— повтор последней команды, которая содержит слова указанные в строке.
!?dir
=> rmdir songs (будьте осторожны применяя эту команду!)
script
— запись сессии терминала в файл. Для остановки записи введите — exit
script [ключи] [файл]
script session_record.txt
— запись сессии терминала в файл session_record.txt.
script -c «mkdir pictures» session_record.txt
— запись одной команды в файл.
Навигация по файловой системе
cd
— перейти в каталог.
cd [каталог]
cd /var/www
— перейти в каталог /var/www.
cd ..
— перейти на один каталог назад.
cd
— (без аргументов) перейти в домашний каталог.
cd —
— переход в предыдущий каталог.
cd ~janedoe
— переход в домашний каталог пользователя janedoe.
pwd
— вывод полного пути до текущего каталога.
Управление каталогами
mkdir
— создание нового каталога.
mkdir [ключи] [каталоги]
mkdir -p /var/www/example.ru/www/
— создать все каталоги в пути если их не существует.
mkdir Games Videos Pictures
— создание нескольких каталогов в текущей директории.
mkdir /var/www/site.ru/www/{js,css,img}
— создание нескольких каталогов в определенной директории.
rmdir
— удаление пустого каталога.
rmdir [ключи] [каталоги]
rmdir music videos pictures
— удаление нескольких пустых каталогов в текущей директории.
rmdir /home/john/{pictures,music,films}
— удаление нескольких пустых каталогов в определенной директории.
rm -r каталог
— удаление непустых каталогов.
Управление файлами
Просмотр свойств файлов и каталогов
ls
— просмотр содержимого и атрибутов (свойств) каталога.
ls [ключи] [файл/каталог]
ls ~ /var/www ~john
— просмотр списка содержимого сразу для трех каталогов.
ls -lha /var/www
— просмотр списка содержимого каталога, с отображением скрытых файлов.
ls -l ~/avatar.png
— список свойств файла.
ls -l *.{css,html}
— список свойств всех файлов с расширениями css, html.
ls -ld
— просмотр списка свойств текущего каталога.
ls -F
— добавление символа индикатора (/
— для каталогов).
ls ../
— просмотр содержимого родительского каталога.
ls -t
— сортировка по времени изменения файлов.
ls -S
— сортировка по размеру файлов.
ls -X
— сортировка по алфавиту для расширений файлов.
ls -Z
— просмотр SElinux параметров для файлов.
ls -w20
— вывод списка файлов с ограничением в 20 колонок (ширина вывода).
ls backup???
— список всех файлов, имена которых начинаются на backup за которым следует ровно 3 любые символа.
ls ticket[0-9][0-9]
— список всех файлов, начинающиеся с символов «ticket» за которыми следует ровно 2 цифры.
ls [[:upper:]]*
— список всех файлов, имена которых начинаются c заглавной буквы.
ls [![:digit:]]*
— список всех файлов, имена которых не начинаются с цифры.
ls *[[:punct:]427]
— список всех файлов, заканчивающихся знаком препинания или цифрой 4, 2 или 7.
ls [mds]*
— список всех файлов, имена которых начинаются на m, d или s.
file
— просмотр типа файлов.
file [ключи] [файл]
file -i index.html /dev/tty0
— вывод mime типа для каждого файла.
du
— просмотр, того сколько памяти занимают файлы и каталоги.
du [ключи] [файл/каталог]
du -ah
— занимаемая память для каждого файла в текущем каталоге.
du -sh ~/music
— сумма занимаемой памяти для всех файлов в каталоге ~/music.
du -ah —time /home/john/downloads
— вывод занятой памяти для файлов и каталогов с датой последнего изменения.
stat
— показать детальную информацию о свойствах файла.
stat [ключи] [файл/каталог]
stat index.html
— свойства файла.
stat .
— свойства текущего каталога.
stat -f /dev/sda
— свойства файловой системы на диске /dev/sda.
sort
— сортировка строк.
sort [ключи] [текстовый файл]
sort fruitlist.txt
— сортировка строк по алфавиту.
sort -r fruitlist.txt
— обратная сортировка строк по алфавиту
sort -R fruitlist.txt > newlist.txt
— случайная сортировка строк и запись результата в файл.
sort -с fruitlist.txt
— показывает первую не отсортированную строку файла.
sort -k 2 fruitlist.txt
— сортировка по второму слову (после пробела).
sort -k 1.2 fruilist.txt
— сортировка по первому слову и второму символу.
ls -sh | sort -n
— сортировка списка файлов по их размеру.
Создание файлов
> имя_файла
— создание нового файла. Также очистка файла если он уже существует.
ln
— создание жесткой или символической ссылки для файла.
ln [ключи] [файл1] [файл2]
ln file1.txt file2.txt
— создание жесткой ссылки file1 на индексный дескриптор file2. Проще говоря, еще одно имя для одного и того же файла.
ln -s file1.txt file2.txt
— создание символической (мягкой) ссылки (file1 будет ярлыком для file2).
mkfifo
— создание именного канала, к которому могут обратится два различных процесса. Именованные каналы FIFO позволяют обмениваться данными с абсолютно чужим процессом.
mkfifo [ключи] [имя канала]
mkfifo pipe; ls > pipe; cat < pipe
— создаем канал pipe, передаем результат команды в канал, выводим то, что передали в канал. Чтобы увидеть результат — «ls > pipe» и «cat < pipe» должны выполняться в разных окнах терминала.
mknod
— создание файла символьного/блочного устройства или именованного канала FIFO.
mknod [имя устройства] [тип устройства] [ключи] [старший номер] [младший номер]
touch
— изменение времени редактирования файла (часто используется для создания файлов).
touch [ключи] [файлы]
touch -c report.txt
— изменить время изменения файла на текущее или создать файл если его не существует.
touch index.html about.html
— создание двух html файлов (если их не существует).
touch -ad «Jun 19 1994 12:30:21» report.txt
— изменить время последнего доступа к файлу report.txt.
Перенос, копирование и удаление файлов
mv
— переименование файлов. Перенос файлов в другие каталоги.
mv [ключи] [файл/каталог] [файл/каталог]
mv oldname.txt newname.txt
— переименование файла в текущем каталоге.
mv essay.txt ~/docs/univer
— перенос файла в другой каталог.
mv -n cat.png ~/pictures/cats
— если файл с именем cat.png уже существует в каталоге ~/pictures/cats, то не перезаписывать его новым файлом.
mv essay.doc /univer/essay_done.doc
— переименование файла с перемещением.
mv [0-9]*.jpg ~/pictures/photos
— перенести все изображения формата jpg, имена которых начинаются с цифры в каталог ~/pictures/photos.
cp
— копирование файла (с переименованием).
cp [ключи] [файл/каталог] [файл/каталог]
cp index.html /var/www/site.ru/www/
— скопировать файл в другой каталог.
cp cat.jpg ~/pictures/kitty.jpg
— копирование файла с его переименованием.
rename
— переименование файлов с использованием масок.
rename [ключи] [что заменить] [чем заменить] [файл]
rename .htm .html *.htm
— изменить расширение .htm на .html для всех файлов с расширением .htm.
rename accepted declined *
— если файл содержит строку accepted, то заменить ее на declined для всех файлов.
rm
— удаление файлов и каталогов.
rm [ключи] [файл/каталог]
rm -d ~/pictures/cats
— удаление пустой директории (аналог rmdir
).
rm cat.jpg dog.png
— удаление нескольких файлов.
rm -r ~/music/kpop
— удаление непустого каталога вместе с файлами (рекурсивное удаление).
rm -rf *
— удалить все файлы и каталоги в текущей директории.
crm -rf ~/pictures/*.png
— удалить все png файлы без подтверждения удаления.
rm — Frank Sinatra — Let it snow.mp3
— удаление файла с многословным именем, а также файлов с именем, которое имеет знак «-» (имя указывать после --
).
scp
— копирование файлов через зашифрованное сетевое соединение между двумя хостами.
scp [ключи] [хост1:файл] [хост2:файл]
scp report.txt [email protected]:report.txt
— копирование файла на удаленный хост в домашнюю директорию пользователя jane (потребуется ввести пароль для пользователя jane).
scp [email protected]:/home/jane/* .
— скопировать все файлы в текущий каталог из домашней директории пользователя jane на удаленном хосте (потребуется ввести пароль для пользователя jane).
scp -r [email protected]:/home/jane/music ~/janes_music
— рекурсивное копирование всех файлов и подкаталогов из домашней директории пользователя jane на удаленном хосте (потребуется ввести пароль для пользователя jane).
scp [email protected]:pricelist.txt [email protected]:/home/john/docs
— копирование файла с удаленного хоста пользователя jane на удаленный хост пользователя john.
Управление доступом к файлам
chmod
— изменение битов режима доступа к файлу.
chmod [ключи] [биты доступа] [файл]
chmod -R 711 /usr/local/scripts
— право выполнения на все файлы в каталоге, для группы и всех остальных.
chmod g-w passwords.txt
— отнять у группы право записи.
chmod og+r menu.txt guests.txt
— добавить группе и всем остальным пользователям право чтения.
сhmod g-x, o= script.sh
— отнять право выполнения у группы, всем остальным запретить доступ к файлу.
сhmod g=u userlist.txt
— группе выдаются такие же права, что и у владельца файла.
chmod —reference=file1 file2
— скопировать права file1 для file2
chown
— изменение владельца файлов и каталогов.
chown [ключи] [владелец:группа] [файл]
chown jane report.doc stats.txt
— пользователь jane становится владельцем файлов report.doc и stats.txt.
chown jane: report.doc
— пользователь jane становится владельцем файла report.doc. Также группа владельцев меняется на jane.
chown :accounters report.doc
— смена группы владельцев файла report.doc.
chown john:accounters report.doc
— пользователь john становится владельцем файла report.doc. У файла также меняется группа владельцев, к которой он принадлежит на accounters.
chown -R jane:testers /var/www/example.ru/fortest
— рекурсивная смена пользователя и группы для всех файлов в каталоге.
chown 1003:1004 /var/www/example.ru
— установка владельца c UID(UserID)=1003 и группы c GID(GroupID)=1004.
chown -Rc —reference ~/music ~/pictures
— рекурсивное копирование владельца и группы у ~/music для всех файлов в каталоге ~/pictures
chgrp
— смена группы пользователей для файла.
chgrp [ключи] [группа] [файл]
chgrp designers logo.png
— установка группы пользователей designers для файла logo.png.
chgrp -R accounters ~/reports
— установка группы пользователей accounters для всех файлов в каталоге ~/reports.
getfacl
— вывод списка контроля доступа (ACL) для файла.
getfacl [ключи] [файл]
getfacl -t file.txt
— вывод параметров доступа в табличном виде.
getfack -Rt ~/reports
— вывод параметров доступа для всех файлов в каталоге.
sudo
— запуск команды от имени другого пользователя (root по умолчанию)
sudo [ключи] [команда]
sudo -u janedoe mkdir ~janedoe/reports
— выполнить команду от имени пользователя janedoe.
sudo mkdir /var/www
— выполнить команду от имени пользователя root.
umask
— изменение маски прав доступа по умолчанию при создании нового файла.
umask [-S] [маска]
umask
— показать текущую маску по умолчанию.
umask u+w,g-w,o=
— добавить право записи для владельца — u+w
, отнять право записи для группы — g-w
, для остальных пользователей запретить доступ к файлу o=
.
umask a=rw
— установить право записи и чтения для всех пользователей.
umask 0000
— полный доступ для всех пользователей. (так не надо делать :-))
Чтение текстовых файлов
cat
— конкатенация (склеивание) файлов. Часто используется для простого просмотра текстового файла.
cat [ключи] [файл]
cat /etc/passwd
— просмотр содержимого файла.
cat > essay.txt
— копирует содержимое стандартного ввода в файл. Позволяет печатать короткие тексты в файл прямо в консоли, для прекращения печати нажмите Ctrl+D (EOF).
cat -n file1.txt file2.txt
— объединить два файла и вывести номера строк.
grep
— поиск заданной строки в текстовых файлах.
grep [ключи] [текст] [файл]
grep -i jane /etc/passwd
— поиск слова jane в файле /etc/passwd, без учета регистра символов.
grep ‘Sep 02 .* Updated’ yum.log
— поиск строки из нескольких слов с использованием маски.
grep ‘green apple’ pricelist1.txt pricelist2.txt
— поиск строки green apple в нескольких файлах.
grep -c 1994 bdaylist.txt
— показать количество строк, в которых нашлось совпадение с числом 1994.
grep -n 1994 bdaylist.txt
— показать строки и их номера, в которых нашлось совпадение с числом 1994.
grep -r jane /etc
— рекурсивный поиск слова jane во всех файлах и подкаталогах в директории /etc.
grep -w pop songs.txt
— поиск целого слова pop (kpop, poprock, latinpop не будут показаны в результатах).
grep -v pop songs.txt
— поиск наоборот, будут показаны строки, в которых не встречается слово pop.
grep -lr TODO /var/www/example.ru
— поиск файлов в каталоге /var/www/example.ru, в которых встречается слово TODO.
grep -Lr ‘<title>’ /var/www/example.ru
— поиск файлов в каталоге /var/www/example.ru, в которых не встречается слово <title>.
man ps | grep — -f
— поиск значение ключа -f
для команды ps
.
head
— вывод первых 10 строк файла.
head [ключи] [файл]
head ~/documents/essay.doc
head -n5 ~/documents/essay.doc
— вывод первых 5 строк файла.
less
— мощная утилита для просмотра содержимого файла, более функциональный вариант утилиты more.
less [ключи] [файл]
less -c pricelist.txt
— вывести содержимое файла с очисткой экрана.
more
— старая утилита просмотра содержимого файла. Не позволяет скролить вверх.
more [ключи] [файл]
more -5 -p pricelist.txt
— вывести пять строк файла с очисткой экрана.
tac
— тоже самое, что и команда cat только вывод текста происходит снизу вверх (последняя строка становится первой, предпоследняя становится второй и т.д.).
tac [ключи] [файл]
tac part1.txt part2.txt > whole.txt
— конкатенация (склеивание файлов) и запись результата в файл whole.txt
tail
— вывод последних 10 строк файла.
tail [ключи] [файл]
tail /var/log/nginx/error.log
tail -n7 /var/log/nginx/error.log
— вывод последних 7 строк файла.
tr
— осуществляет посимвольную замену, удаление, преобразование символов строки из стандартного ввода.
tr [ключи] [набор]
tr b v
— заменить все ‘b’ на ‘v’. 'black cat'=>'vlack cat'
tr abc op
— заменить все ‘a’ на ‘o’, все ‘b’ и ‘с’ на ‘p’. 'black cat'=>'plopk pot'
tr b v < source.txt > result.txt
— заменить все ‘b’ на ‘v’ в тексте файла source.txt и записать результат в файл result.txt (source.txt останется без изменений).
cat source.txt | tr b v > result.txt
— альтернативный вариант предыдущему примеру.
tr ‘[a-d]’ ‘[w-z]’
— заменить последовательность ‘a-d’, на последовательность ‘w-z’. 'black cat'=>'xlwyk ywt'
tr ‘[A-Z]’ ‘[a-z]’
— заменить все символы в верхнем регистре на нижний регистр. 'Black Cat'=>'black cat'
tr ‘[:upper:]’ ‘[:lower:]’
— альтернативный вариант предыдущему примеру.
tr -s ‘ ‘ ‘ ‘
— замещает все повторяющиеся символы на один. 'black cat'=>'black cat'
tr -s ‘[:blank:]’
— альтернативный вариант предыдущему примеру.
tr -d ‘[:digit:]’
— удалить все цифры из текста. '2 black cats'=>' black cat'
tr -c ‘a[:space:]’ ‘o’
— всё, что не ‘a’ и не пустой символ, то ‘o’. 'black cat'=>'ooaoo oao'
tr -cd ‘[:digit:]’
— всё, что не цифра — удалить. 'Phone: 36-33-16'=>'363316'
cat /etc/passwd | tr ‘[:punct:][:space:]’ ‘ ‘ | tr -s ‘ ‘ >> trash.txt- удалить все знаки пунктуации и отступы (пробелы и переводы строк) из текста файла /etc/passwd, заменить все повторения пробелов одним пробелом и записать результат в конец файла trash.txt.
uniq
— исключает повторяющиеся строки из сортированного текста.
uniq [ключи] [файл]
sort buylist.txt | uniq
— исключает повторяющиеся строки из списка.
sort buylist.txt | uniq -d
— выводит повторяющиеся строки из списка.
sort buylist.txt | uniq -ic- выводит количество повторяющихся строк.
wc
— вывод количества строк, слов и символов в файле.
wc [ключи] [файл]
wc -w /etc/passwd
— показать только количество слов в файле.
wc -L /etc/passwd
— показать количество символов в самой длинной строке.
Поиск ПО, файлов и каталогов
locate
— поиск файлов и каталогов, используя базу данных имен файлов.
locate [ключи] [имя файла]
locate report
— выведет все пути к файлам, в имени которых есть слово «report».
locate ~/*.txt
— выведет все пути к файлам домашнего каталога с расширением txt.
locate -i essay
— выведет все пути к файлам, в имени которых есть слово «essay» без учета регистра символов.
locate -с essay
— только вывод количества строк найденных результатов.
locate -S
— вывести статистику по базе данных файлов.
locate -l5 essay
— вывод только 5 результатов поиска.
locate [[:digit:]]*
— поиск файлов, имена которых начинаются с цифры.
locate [abc]*
— поиск файлов, имена которых начинаются с буквы «a», «b» или «c».
updatedb
— обновление базы данных имен файлов. По умолчанию запускается в cron, раз в сутки.
find
— расширенный поиск файлов и каталогов.
find [где ищем] [ключ] [значение ключа]
find
— вывести список всех файлов (включая подкаталоги) в текущей директории.
find ~
— вывести список всех файлов (включая подкаталоги) в домашней директории.
find ~ ~jane /etc/sysconfig
— вывести список всех файлов (включая подкаталоги) для директорий ~, /home/jane, /etc/sysconfig.
find ~ -name ‘report.txt’
— поиск файла с точным именем report.txt (Report.txt, report.doc — не найдутся).
find ~ -iname ‘report.txt’
— поиск файла с именем report.txt без учета регистра символов (Report.txt — также найдётся).
find ~/music -iname ‘*aqua*’
— поиск файлов и каталогов, которые в своем имени содержат слово aqua (без учета регистра).
find ~/music | grep -iv ‘aqua’
— поиск файлов и каталогов, которые в своем имени не содержат слово aqua (без учета регистра).
find ~/music -type f ! -name ‘aqua’
— альтернативный вариант предыдущего примера. !
— логический оператор NOT.
find ~/music -iname ‘aqua’ -type f
— поиск только файлов, которые в своем имени содержат слово aqua (без учета регистра).
find ~/music -iname ‘*aqua*’ -type d
— поиск только каталогов, которые в своем имени содержат слово aqua (без учета регистра).
find ~ -user ‘jane’ -group ‘managers’
— поиск файлов, владельцем которых указан пользователь jane и группа — managers.
find ~/documents -type f -atime +1
— поиск файлов, к которым обращались более чем 1 день назад.
find ~/documents -type f -atime -1
— поиск файлов, к которым обращались менее чем 1 день назад.
find ~/documents -type f -amin -30
— поиск файлов, к которым обращались менее чем 30 минут назад.
find ~/documents -type f -mtime 0
— поиск файлов, которые подвергались изменениям за последние 24 часа.
find ~/documents -perm 644
— поиск файлов и каталогов с битами доступа 644.
find ~/documents -empty
— поиск пустых файлов и каталогов.
find ~/documents -perm u=rw,g=rw,o=r
— поиск файлов и каталогов с битами доступа записи и чтения для владельцев и групп и только чтения для остальных пользователей.
find ~ -size +1M
— поиск файлов и каталогов, чьи размеры больше 1Мб.
find ~ -size -1G
— поиск файлов и каталогов, чьи размеры меньше 1Гб.
find ~/music -type f -iname ‘*aqua*’ -exec mv ‘{}’ /home/john \;
— поиск файлов с именем aqua и перенесение их в каталог /home/john. '{}'
— место вставки результатов поиска, \;
— конец команды.
find ~/music -type f -iname ‘*aqua*’ -ok mv ‘{}’ /home/john \;
— то же самое, что и в предыдущем примерe, но с подтверждением каждого действия.
find -name ‘*.jpg’ -o -name ‘*.png’
— поиск файлов с расширением jpg или png. -o
— логический оператор OR.
find -name ‘*.txt’ -maxdepth 1
— поиск txt файлов только в текущем каталоге, не заглядывая в подкаталоги. -maxdepth
— уровень поиска в подкаталогах.
find -maxdepth 1 -type f -exec du -sh {} \; | sort -n -r | head -10
— вывод самых тяжелых файлов в текущем каталоге.
find -maxdepth 1 -type f -exec du -sh {} \; | sort -n | head -10
— вывод самых легких файлов в текущем каталоге.
find /var/log -type f -name ‘*.log’ -delete
— удаление всех найденных файлов с расширением «.log».
which
— показывает путь бинарного файла установленной программы (сообщает установлена ли программа).
which [ключи] [команда]
which vi
=> /usr/bin/vi.
whereis
— расширенный аналог which, показывает нахождение программы когда нет бинарников и мануалов.
whereis [команда]
whereis vi
=> vi: /usr/bin/vi /usr/share/man/man1/vi.1.gz
Получение информации о системе
df
— отчет об использовании пространства дисковых накопителей.
df [ключи] [файл]
df -h
— вывод отчета в удобном виде.
du
— отображение дискового пространства, занятого файлами и каталогами.
du [ключи] [файл]
du -ah /home/janedoe
— отображение размера файлов и каталогов.
du -sh /home/janedoe
— отображение общего размера всех файлов и каталогов.
du -h -d0 *.txt /home/janedoe
— отображение размера только текстовых файлов без заглядывания в подкаталоги (-d0).
du —time -h /home/janedoe
— дополнить вывод временем последнего изменения файла.
free
— отображение занятого пространства оперативной памяти.
free [ключи] [команда]
free -mt
— занятая оперативная память в мегабайтах со строкой Total.
free -th -s1
— отображение результата каждую секунду.
watch free
— отображение занятой оперативной памяти в реальном времени.
hostname
— имя текущего хоста.
iostat
— статистика использования CPU и операций ввода/вывода.
iostat [ключи]
iostat -m
— выводить статистику в мегабайтах.
iostat -N
— вывод имен устройств в статистике.
iostat -p sda
— вывод статистики для группы блочных устройств.
iostat -x
— вывод расширенной статистики.
screenfetch
— информация о системе (не везде предустановлена).
uptime
— время прошедшее после запуска системы.
uname
— информация об ОС.
uname [ключи]
uname -a
— полная информация об ОС.
vmstat
— информация об использовании виртуальной памяти.
vmstat [ключи] [частота обновления]
vmstat 2
— обновление данных каждые 2 секунды.
vmstat -d
— статистика использования дисков.
Управление процессами
ps
— выводит информацию о выполняемых в данный момент процессах.
ps [ключи] [id процессов]
ps -fp 1256 1886 1887
— полная информация о процессах с id 1256, 1886, 1887.
ps aux
— выводит полный список запущенных процессов в системе.
ps -ejH
— вывести дерево процессов.
ps axjf
— вывести расширенное дерево процессов.
ps -p 15 -o comm=
— вывести имя процесса по id.
ps -C sshd -o pid=
— вывести id процесса по его имени.
ps axo pid,pcpu,comm
— вывести информацию о процессах в пользовательском формате.
pstree
— вывод дерева процессов.
pstree [ключи]
pstree -p
— вывод дерева процессов совместно с их идентификаторами PID.
top
— выводит информацию в реальном времени о запущенных процессах в системе.
jobs
— вывод запущенных задач, остановленных или выполняемых в фоновом режиме.
bg
— перевод задачи (остановленной) на выполнение в фоновом режиме.
bg [номер задачи]
bg
— перевод последней (остановленной) задачи в фоновый режим
bg %2
— перевод задачи %2 в фоновый режим.
fg
— вывод задач (остановленных) из фонового режима работы на передний план.
fg [номер задачи]
fg
— перевод последней фоновой (остановленной) задачи на передний план.
fg %3
— перевод задачи 3 на передний план.
процесс &
— запуск процесса в фоновом режиме.
firefox &
— запуск браузера Mozilla Firefox в фоновом режиме.
kill
— принудительное завершение работы процессов.
kill [сигнал] [процесс]
kill 6478
— послать сигнал Terminate (завершить) процессу с идентификатором PID=6478.
kill %2
— послать сигнал Terminate (завершить) задаче под номером 2 в списке jobs.
kill -2 45211
— послать сигнал Interrupt (прервать) процессу с идентификатором PID=45211. Аналог работы Ctrl + C.
kill -19 6478
— послать сигнал Stop (приостановить). Грубо говоря, процесс ставится на паузу.
kill -18 6478
— послать сигнал Continue (продолжить). Грубо говоря, снять процесс с паузы.
kill -28 6478
— послать сигнал Window Changed (сменен размер окна).
kill -20 6478
— послать сигнал Stop (остановить). Аналог работы Ctrl + Z.
kill -l
— получить полный список доступных сигналов.
killall
— принудительное завершение работы для нескольких одноименных процессов.
killall [сигнал] [процесс]
killall -9 top
— принудительное завершение работы для всех процессов с именем top.
Работа с сетью
mtr
— утилита для диагностики сети (улучшенный аналог traceroute
и ping
).
mtr [ключи] [команда]
mtr —show-ips yandex.ru
— трассировка маршрута.
traceroute
— трассировка маршрута до указанного хоста.
traceroute [ключи] [адрес хоста]
ip
— показать или изменить сетевые настройки.
ip [ключи] [команда]
ip -s addr
— подробный вывод параметров для сетевых устройств.
ip neigh
— вывод хостов подключенных к сети (аналог arp
).
ip route
— вывод таблицы маршрутизации.
Установка имени хоста (hostname)
hostnamectl
— установить новое имя хоста.
hostnamectl [ключи] [команда]
hostnamectl
— вывести данные о системе включая текущее имя хоста.
hostnamectl set-hostname meliorem.ru —static
— установка имени хоста — meliorem.ru.
hostnamectl set-hostname «Blog for webdev» —pretty
— установка имени хоста ориентированного на человека, а не на машину.
systemctl restart systemd-hostnamed
— перезапустить сервис hostname для применения настроек.
nmtui
— утилита для смены hostaname в псевдографическом режиме.
Управление учетными записями пользователей
id
— вывод идентификаторов пользователя и его групп.
id [ключи] [пользователь]
id janadoe
— вывод идентификатора пользольвателя и групп для janedoe
logname
— выводит логин текущего пользователя.
su
— смена учетной записи.
su [ключи] [имя пользователя]
su
— перейти в учетную запись root.
su — jane
— перейти в учетную запись пользователя jane запустить оболочку этого пользователя (изменить переменные окружения).
su -m jane
— перейти в учетную запись пользователя jane с сохранением сессии оболочки текущего пользователя.
whoami
— отображает имя текущего пользователя.
who
— показывает залогиненных пользователей.
w
— отображает залогиненных пользователей и их процессы.
w [ключи] [пользователь]
Работа с утилитами *ctl
systemctl
— управляет работой системных сервисов и утилит.
systemctl [ключи] [команда] [сервис]
systemctl -l status nginx
— проверка состояния сервиса.
systemctl start ngnix
— запуск работы сервиса.
systemctl stop nginx
— остановка работы сервиса.
systemctl enable nginx
— включение сервиса при старте системы.
systemctl disable nginx
— выключение сервиса при старте системы.
systemctl reload nginx
— обновление конфигурационного файла сервиса.
systemctl restart nginx
— перезапуск сервиса.
systemctl is-enabled
— проверка включения сервиса при старте системы.
systemctl list-unit-services
— вывод списка всех сервисов.
systemctl show nginx
— вывод свойств сервиса.
systemctl cat nginx
— вывод списка зависимых и исходных файлов сервиса.
loginctl
— менеджер учетных записей.
loginctl [ключи] [команда] [имя логина]
loginctl list-users
— вывод авторизованных пользователей.
loginctl user-status root
— вывод авторизованных пользователей.
loginctl show-user root
— вывод свойств пользователя.
loginctl terminate-user root
— удаление всех сессий пользователя.
journalctl
— вывод журналов (логов) сервисов.
journalctl [ключи]
journalctl —disk-usage
— вывод количества занятой памяти под логи.
journalctl —unit=nginx
— вывод логов сервиса.
journalctl —output=verbose —unit=nginx
— вывод всех полей в логе сервиса.
journalctl —output=cat —unit=nginx
— вывод только сообщений из лога сервиса.
Работа с файловыми системами
cat /etc/fstab
— список смонтированных файловых систем.
fuser
— вывод идентификаторов процессов, использующих файловую систему или сокет.
fuser [ключи] [файловая система/сокет]
fuser -c /home
— процессы работающие с файловой системой /home.
fuser -v ftp/tcp
— процессы, работающие с портом 21.
Управление окном терминала
clear
— очистка содержимого на экране терминала.
reset
— перезапуск сессии терминала.
Переменные окружения
env
— вывод всех переменных окружения.
export переменная
— создание переменной окружения (будет видна всей системе).
Управление питанием компьютера
shutdown
— управление питанием компьютера.
shutdown [ключи]
shutdown -h
— выключение компьютера.
shutdown -r
— перезагрузка компьютера.
shutdown -h -c 3600
— выключение компьютера через час (3600 секунд).
poweroff
— выключение компьютера.
reboot
— перезагрузка компьютера.
Другие интересные и полезные команды
cal
— просмотр календаря.
cal [ключи]
cal -3
— вывести предыдущий, текущий и следующий месяцы.
cal -m
— первый день в неделе — понедельник.
date
— вывод текущей даты.
date [ключи]
date
— вывод даты и времени.
date -s «06/19/1994 11:30:00»
— установить время на 19 июня 1994 года.
date «+Time: %H:%M %d.%m.%y»
— смена формата отображения даты и времени. =>Time: 20:34 26.11.2018
expr
— простой калькулятор (некоторые символы необходимо экранировать). Пробелы между знаками обязательны.
expr [выражение]
expr \( 20 + 2 \) \* 3 \/ 2
=> 33
factor
— раскладывает число на множители.
look
— отобразить слова, начинающиеся с заданной строки. По умолчанию используется словарь /usr/share/dict/words.
look [ключи] [начало слова]
look beaut
— вывод всех слов из словаря, которые начинаются со слова ‘beaut’.
man ascii
— шпаргалка кодовой таблица ASCII-символов.
yes строка
— бесконечный вывод строки в терминале.
wall строка
— выводит сообщение в терминалах всех залогиненных пользователей.
meliorem.ru
Основные команды Linux в «Терминале»
По аналогии с ОС Windows, в Линуксе присутствует определенный набор команд для наиболее удобной и быстрой работы в операционной системе. Но если в первом случае мы вызываем утилиту или выполняем действие из «Командной строки» (cmd), то во второй системе действия производятся в эмуляторе терминала. По сути, «Терминал» и «Командная строка» — это одно и то же.
Список команд в «Терминале» Linux
Для тех, кто недавно начал знакомство с линейкой операционных систем семейства Linux, приведем ниже реестр наиболее значимых команд, которые необходимы каждому пользователю. Заметим, что инструменты и утилиты, вызываемые из «Терминала», являются предустановленными во всех дистрибутивах Linux и не нуждаются в предварительной загрузке.
Управление файлами
В любой операционной системе не обойтись без взаимодействия с различными форматами файлов. Большинство пользователей привыкло для этих целей использовать файловый менеджер, который имеет графическую оболочку. Но все те же манипуляции, а то и больший их перечень, можно провести, используя специальные команды.
- ls – позволяет просматривать содержимое активного каталога. Имеет две опции: -l – выводит содержимое в виде списка с описанием, -a – показывает файлы, которые скрыты системой.
- cat – демонстрирует содержимое указанного файла. Для нумерации строчек применяется опция -n .
- cd – используется для перехода из активной директории в указанную. При запуске без дополнительных опций перенаправляет в корневой каталог.
- pwd – служит для определения текущей директории.
- mkdir – создает новую папку в текущей директории.
- file – выводит подробную информацию о файле.
- cp – необходима для копирования папки или файла. При добавлении опции -r включает рекурсивное копирование. Опция -a сохраняет атрибуты документа в дополнение к предыдущей опции.
- mv – используется для перемещения или переименования папки/файла.
- rm – удаляет файл или папку. При использовании без опций удаление происходит безвозвратно. Для перемещения в корзину необходимо ввести опцию -r.
- ln – создает ссылку на файл.
- chmod – изменяет права (чтение, запись, изменение…). Может быть отдельно применена для каждого пользователя.
- chown – позволяет сменить владельца. Доступно только для СуперПользователя (Администратора).
- locate – предназначена для поиска файлов в системе. В отличие от команды find, поиск выполняется в updatedb.
- dd – применяется при создании копий файлов и их преобразовании.
- find – осуществляет поиск документов и папок по системе. Имеет множество опций, с помощью которых можно гибко настроить параметры поиска.
- mount-umounth – используется для работы с файловыми системами. С ее помощью систему можно как отключить, так и подключить. Для использования необходимо получить root-права.
- du – показывает пример файлов/папок. Опция -h выполняет преобразование в удобочитаемый формат, -s — выводит сокращенные данные, а -d — устанавливает глубину рекурсий в каталогах.
- df – анализирует дисковое пространство, позволяя узнать количество оставшегося и заполненного места. Имеет множество опций, которые позволяют структурировать получаемые данные.
Примечание: чтобы получить права суперпользователя (root-права), перед выполнением команды необходимо ввести «sudo su» (без кавычек).
Работа с текстом
Вводя в «Терминал» команды, которые непосредственно взаимодействуют с файлами, рано или поздно понадобится вносить правки в них. Для работы с текстовыми документами используются следующие команды:
- more – позволяет просматривать текст, не помещающейся в область рабочего поля. При отсутствии скроллинга терминала применяется более современная функция less.
- grep – осуществляет поиск текста по шаблону.
- head, tail – первая команда отвечает за вывод первых нескольких строк начала документа (шапка), вторая —
показывает последние строчки в документе. По дефолту выводится 10 строчек. Сменить их количество можно, используя функцию -n и -f. - sort – используется для сортировки строчек. Для нумерации применяется опция -n, для сортировки сверху вниз — -r.
- diff – сравнивает и показывает отличия в текстовом документе (построчно).
- wc – считает слова, строки, байты и символы.
Управление процессами
Длительное использование ОС в течение одного сеанса стимулирует появление множества активных процессов, которые способны в значительной мере ухудшить производительность компьютера вплоть до того, что за ним будет не комфортно работать.
Данную ситуацию легко можно исправить, завершая ненужные процессы. В системе Linux в этих целях применяют следующие команды:
- ps, pgrep – первая команда выводит всю информацию об активных процессах системы (функция «-е» выводит один определенный процесс), вторая выводит ID процесса после ввода его названия пользователем.
- kill – завершает PID-процесс.
- xkill – по нажатию на окно процесса —
завершает его. - pkill — завершает процесс по его имени.
- killall завершает все активные процессы.
- top, htop – отвечают за отображение процессов и применяются в роли системных консольных мониторов. htop является более популярной на сегодняшний день.
- time – выводит на экран «Терминала» данные о времени выполнения процесса.
Окружение пользователя
В число важных команд входят не только те, что позволяют взаимодействовать с системными компонентами, но и выполняющие более тривиальные задачи, способствующие удобству при работе за компьютером.
- date – выводит дату и время в различных форматах (12 ч, 24 ч), в зависимости от опции.
- alias – позволяет сократить команду или создать ее синоним, выполнить одну или поток из нескольких команд.
- uname – предоставляет информацию о рабочем имени системы.
- sudo, sudo su – первая запускает программы от имени одного из пользователей операционной системы. Вторая — от имени СуперПользователя.
- sleep – переводит компьютер в спящий режим.
- shutdown — выключает компьютер немедленно, опция -h позволяет выключить компьютер в заранее установленное время.
- reboot — перезагружает компьютер. Можно задать и определенное время перезагрузки, используя специальные опции.
Управление пользователями
Когда за одним компьютером работает не один человек, а несколько, то лучшим вариантом будет создание нескольких пользователей. Однако необходимо знать команды для взаимодействия с каждым из них.
- useradd, userdel, usermod – добавить, удалить, редактировать учетку пользователя, соответственно.
- passwd – служит для смены пароля. Запуск от имени СуперПользователя (sudo su в начале команды) позволяет сбросить пароли всех учетных записей.
Просмотр документов
Ни один пользователь не способен запомнить значение всех команд в системе или расположение всех исполняемых файлов программы, однако на помощь могут прийти три легко запоминающиеся команды:
- whereis – отображает путь к исполняемым файлам.
- man — показывает справку или руководство к команде, используется в командах с одноименными страницами.
- whatis – аналог выше представленной команды, однако эта используется для показа имеющихся разделов справок.
Управление сетью
Чтобы настроить интернет и в дальнейшем успешно вносить коррективы в сетевые параметры, необходимо знать хотя бы несколько отвечающих за это команд.
- ip – настройка сетевых подсистем, просмотр доступных IP портов для подключения. При добавлении атрибута -show выводит объекты указанных типов в виде списка, с атрибутом —help выводится справочная информация.
- ping – диагностика подключения к сетевым источникам (роутер, маршрутизатор, модем и т. п.). Также сообщает информацию о качестве связи.
- nethogs – предоставление данных пользователю о расходе трафика. Атрибут -i задает сетевой интерфейс.
- tracerout – аналог команды ping, но в более усовершенствованном виде. Показывает скорость доставки пакета данных на каждый из узлов и дает полную информацию о полном маршруте передачи пакетов.
Заключение
Зная все вышеперечисленные команды, даже новичок, который только установил себе систему на базе Linux, сможет отлично взаимодействовать с ней, успешно решая поставленные задачи. На первый взгляд может показаться, что список очень трудно запомнить, однако при частом выполнении той или иной команды со временем основные врежутся в память, и обращаться каждый раз к представленной нами инструкции не понадобится.
Мы рады, что смогли помочь Вам в решении проблемы.Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТlumpics.ru
71 команда Linux на все случаи жизни. Ну почти
В терминале Linux можно делать практически что угодно: настраивать систему, устанавливать и удалять приложения, управлять дисками и файлами и даже разговаривать с коровами.
Команды Linux для навигации в терминале
&&
. Строго говоря, это не команда. Если вы хотите выполнить сразу несколько команд, поставьте между ними двойной амперсанд вот так:первая_команда && вторая_команда
. Терминал выполнит команды по порядку. Вы можете ввести столько команд, сколько захотите.alias
. Присваивает созданные вами названия длинным командам, которые вы не можете запомнить. Введитеalias длинная_команда короткая_команда
.cd
. Изменяет текущую терминальную папку. Когда вы запускаете терминал, он использует вашу домашнюю папку. Введитеcd адрес_папки
, и терминал будет работать с файлами, которые там находятся.clear
. Очищает окно терминала от всех сообщений.history
. Отображает все недавно введённые вами команды. Кроме того, вы можете переключаться между недавними командами с помощью клавиш «Вверх» и «Вниз». Если вы не хотите, чтобы введённая вами команда была записана, поставьте перед ней пробел так:ваша_команда
.man
. Отображает руководство по программам и командам Linux. Введитеman имя_пакета
илиman ваша_команда
.whatis
. Отображает краткое описание какой-либо программы. Введите команду и название программыwhatis имя_пакета
.
Команды Linux для получения прав суперпользователя
Для выполнения множества действий в системе, например для установки и удаления программ, вам понадобятся права администратора, или суперпользователя root, как его называют в Linux.
sudo
. Эта команда даст вам права суперпользователя. Введитеsudo
перед нужной командой (например,sudo apt upgrade
), чтобы выполнить её от имени администратора. Система спросит у вас пароль.sudo su
. После этой команды все введённые вами команды будут исполняться от имени суперпользователя, пока вы не закроете терминал. Используйте её, если вам нужно выполнить много команд с правами администратора.sudo gksudo
. Команда для запуска с правами администратора приложения с графическим интерфейсом. Например, если вы хотите переместить или изменить системные файлы, введитеsudo gksudo nautilus
(укажите тот файловый менеджер, которым пользуетесь).sudo !!
. Эта команда запустит ранее введённую команду с правами администратора. Полезно, если вы набрали команду безsudo
.
Не выполняйте от имени суперпользователя команд, которых не понимаете.
Команды Linux для управления пакетным менеджером
Установку и удаление приложений в Linux выполняют пакетные менеджеры. В Ubuntu и Debian пакетный менеджер называется apt, в Fedora — dnf, в Arch и Manjaro — pacman. Они загружают приложения из сетевых репозитариев, источников пакетов. Давать им команды следует с правами суперпользователя.
apt (Debian/Ubuntu/Mint)
sudo apt install имя_пакета
. Установить нужный пакет.sudo apt-add-repository адрес_репозитария
. Добавить сторонний репозитарий.sudo apt update
. Обновить сведения о пакетах.sudo apt upgrade
. Обновить все пакеты до самых свежих (выполнять послеapt update
).sudo apt remove имя_пакета
. Удалить ненужный пакет.sudo apt purge имя_пакета
. Удалить ненужный пакет со всеми зависимостями, если хотите освободить больше места.sudo apt autoremove
. Удалить все ненужные зависимости, бесхозные пакеты и прочий мусор.
dnf (Red Hat/Fedora/CentOS)
sudo dnf install имя_пакета
. Установить нужный пакет.sudo dnf config-manager --add-repo адрес_репозитария
. Добавить сторонний репозитарий.sudo dnf upgrade
. Обновить все пакеты до самых свежих.sudo dnf remove имя_пакета
. Удалить ненужный пакет.sudo dnf autoremove
. Удалить все ненужные зависимости.
pacman (Arch/Manjaro)
sudo pacman -S имя_пакета
. Установить нужный пакет.sudo yaourt -S имя_пакета
. Установить пакет из AUR, если его нет в основном репозитарии.sudo pacman -Sy
. Обновить сведения о пакетах.sudo pacman -Syu
. Обновить все пакеты до самых свежих.sudo pacman -R имя_пакета
. Удалить ненужный пакет.sudo pacman -Rs имя_пакета
. Удалить ненужный пакет со всеми зависимостями.
Вы можете устанавливать и удалять сразу несколько пакетов, просто перечисляя их через пробел.
sudo apt install firefox clementine vlc
Если вы хотите установить какой-то пакет, но не знаете его точного названия, введите несколько первых букв имени пакета и дважды нажмите Tab. Пакетный менеджер покажет все пакеты, названия которых начинаются одинаково.
Команды Linux для управления процессами
kill
. Эта команда служит для принудительного завершения процессов. Нужно ввестиkill PID_процесса
. PID процесса можно узнать, введяtop
.xkill
. Ещё одна команда для завершения процессов. Введите её, затем щёлкните по тому окну, которое нужно закрыть.killall
. Убивает процессы c определённым именем. К примеру,killall firefox
.top
. Отображает перечень запущенных процессов, сортируя в зависимости от потребления ресурсов CPU. Своего рода терминальный «Системный монитор».
Команды Linux для управления файлами
Просмотр и изменение файлов
cat
. Когда команда используется с одним текстовым файлом (вот так:cat путь_к_файлу
), она отображает его содержимое в окне терминала. Если указать два и больше файлов,cat путь_к_файлу_1 путь_к_файлу_2
, она склеит их. Если ввестиcat путь_к_файлу_1 > новый_файл
, она объединит содержимое указанных файлов в новый файл.chmod
. Позволяет изменять права доступа к файлу. Может пригодиться, если вы хотите внести изменения в системный файл.chown
. Изменяет владельца файла. Следует выполнять с правами суперпользователя.file
. Выводит информацию об указанном файле.nano
. Открывает простой текстовый редактор. Можно создать новый текстовый файл или открыть существующий:nano путь_к_файлу
.rename
. Переименовывает файл или несколько файлов. Команду можно использовать и для массового переименования файлов по маске.touch
. Изменяет дату последнего открытия или модификации указанного файла.wget
. Загружает файлы из интернета в терминальную папку.zip
. Распаковывает и сжимает архивы.
Создание и удаление файлов и папок
mkdir
. Создаёт новую папку в текущей терминальной папке или в указанной папке:mkdir путь_к_папке
.rmdir
. Удаляет указанную папку.rm
. Удаляет файлы. Может удалить как отдельный файл, так и группу, соответствующую определённым признакам.
Копирование и перемещение файлов
cp
. Создаёт копию указанного файла в папке терминала:cp путь_к_файлу
. Или вы можете указать назначениеcp путь_к_файлу путь_для_копии
.mv
. Перемещает файл из одной папки в другую. Вы можете указать имя для перемещаемого файла. Забавно, но в Linux эта команда может использоваться и для переименования файлов. Просто укажите ту же папку, где находится файл, и другое имя.
Поиск файлов
find
. Поиск файлов по определённым критериям, таким как имя, тип, размер, владелец, дата создания и модификации.grep
. Поиск текстовых файлов, содержащих определённые строки. Критерии очень гибко настраиваются.locate
. Поиск файлов и папок, чьи названия подходят запросу, и отображение их путей в файловой системе.
Команды Linux для работы с разделами
lsblk
. Эта команда демонстрирует, какие диски есть в вашей системе и на какие разделы они поделены. Также команда отображает имена ваших разделов и накопителей, в формате sda1, sda2 и так далее.mount
. Монтирует накопители, устройства или файловые системы Linux, чтобы вы могли с ними работать. Обычно устройства подключаются автоматически, как только вы щёлкнете по ним в файловом менеджере. Но иногда может понадобиться примонтировать что-то вручную. Вы можете подключать что угодно: диски, внешние накопители, разделы и даже ISO-образы. Эту команду нужно выполнять с правами суперпользователя. Чтобы примонтировать имеющийся диск или раздел, введитеmount sdX
.umount
. Демонтирует файловые системы. Командаumount sdX
отключит файловую систему внешнего носителя, чтобы вы могли извлечь его.dd
. Эта команда копирует и преобразовывает файлы и разделы. У неё множество различных применений. Например,dd if=/dev/sda of=/dev/sdb
сделает точную копию раздела sda на разделе sdb.dd if=/dev/zero of=/dev/sdX
затрёт содержимое указанного носителя нулями, чтобы информацию было невозможно восстановить. Аdd if=~/Downloads/ubuntu.iso of=/dev/sdX bs=4M
сделает загрузочный носитель из скачанного вами образа с дистрибутивом.
Команды Linux для управления системой
df
. Отображает объём вашего диска, и сколько на нём осталось свободного места.free
. Отображает объём доступной и занятой оперативной памяти.uname
. Отображает сведения о системе Если ввестиuname
, терминал сообщит только Linux. Но командаuname -a
выводит сведения об имени компьютера и версии ядра.uptime
. Сообщает, как долго запущена ваша система.whereis
. Отображает расположение исполняемого файла нужной программы.whoami
. Называет имя пользователя.
Команды Linux для управления пользователями
useradd
. Регистрирует нового пользователя. Введитеuseradd имя_пользователя
, и пользователь будет создан.userdel
. Удаляет учётную запись и файлы пользователя.usermod
. Изменяет учётную запись пользователя. Может переместить домашнюю папку пользователя или назначить дату, когда учётная запись будет заблокирована.passwd
. Изменяет пароли учётных записей. Обычный пользователь может изменить пароль только своей учётной записи, суперпользователь может изменить пароль любой учётной записи.
Команды Linux для управления сетью
ip
. Многофункциональная команда для работы с сетью. Командаip address show
выводит сведения о сетевых адресах,ip route
управляет маршрутизацией и так далее. Давая командыip link set ethX up
,ip link set ethX down
, можно включать и выключать соединения. У командыip
много применений, так что перед её использованием лучше ознакомиться с руководством или ввестиip --help
ping
. Показывает, подключены ли вы к сети, и помогает определить качество связи.
И ещё кое-что
Напоследок — главные команды Linux. Они выводят на экран корову, которая может разговаривать с вами (не спрашивайте, что употребляют разработчики).
cowsay что_угодно
. Корова произнесёт то, что вы ей скажете.fortune | cowsay
. Корова выдаст умную (или не очень) мысль или цитату.cowsay -l
. Выводит список всех животных, которые могут быть отображены в терминале. Если вы вдруг не любите коров.fortune | cowsay -f животное_из_списка
. Животное на ваш выбор начинает сыпать цитатами, иногда уместными.sudo apt-get install fortunes fortune-mod fortunes-min fortunes-ru
. Заставит весь зоопарк говорить по-русски. Без этого животные цитируют Твена и Уайльда в оригинале.
Это далеко не все команды Linux. Если вам нужно узнать в деталях параметры и способы применения команд Linux, вы можете воспользоваться встроенным руководством. Наберите man ваша_команда
или ваша_команда --help
.
lifehacker.ru