Skip to content

Latest commit

 

History

History
875 lines (768 loc) · 33.3 KB

README-RU.md

File metadata and controls

875 lines (768 loc) · 33.3 KB

Топ 100 команд Linux с описаниями и примерами на русском языке

Ниже приведен список из 100 команд Linux, каждая с описанием и примерами использования.

1. ssh

SSH (Secure Shell) используется для безопасного подключения к удаленной машине.

  • программа для входа на удаленную машину и выполнения команд на удаленной машине. Предназначена для обеспечения безопасной зашифрованной связи между двумя ненадежными хостами через незащищенную сеть. Соединения X11, произвольные TCP-порты и сокеты UNIX-домена также могут быть перенаправлены через защищенный канал.
# Подключение к удаленному серверу
ssh username@hostname
# Подключение с использованием определенного порта
ssh -p 2222 username@hostname

2. cd

Изменение текущего каталога.

# Переход в домашний каталог
cd ~
# Переход в каталог /etc
cd /etc
# Подняться на один уровень выше
cd ..

3. ls

Отображение содержимого каталога.

  • выводит информацию о файлах (по умолчанию текущего каталога). Сортирует записи в алфавитном порядке, если не указаны параметры -cftuvSUX или --sort.
# Показать файлы в текущем каталоге
ls
# Показать все файлы, включая скрытые
ls -a
# Показать файлы с подробной информацией
ls -l

4. pwd

Вывод полного имени текущего рабочего каталога.

pwd

5. nano

Nano - это простой и удобный текстовый редактор.

  • это маленький и дружелюбный редактор. Копирует внешний вид и функциональность Pico, но является свободным ПО и включает несколько функций, которых нет в Pico, таких как: открытие нескольких файлов, построчный скроллинг, отмена/повтор, подсветка синтаксиса, нумерация строк и мягкая перенастройка длинных строк.
# Открыть файл в nano
nano filename.txt
# Сохранить изменения и выйти
Ctrl + O, Enter, Ctrl + X

6. vim

Vim - мощный текстовый редактор.

  • это текстовый редактор, совместимый с Vi. Он может использоваться для редактирования всех видов простого текста. Особенно полезен для редактирования программ.

Есть много улучшений по сравнению с Vi: многоуровневая отмена, много окон и буферов, подсветка синтаксиса, редактирование командной строки, автодополнение имен файлов, онлайн-помощь, визуальный выбор и т.д. См. ":help vi_diff.txt" для краткого описания различий между Vim и Vi.

# Открыть файл в vim
vim filename.txt
# Войти в режим вставки
i
# Сохранить изменения и выйти
:wq

7. cp

Копирование файлов и каталогов. Копирует ИСТОЧНИК в ЦЕЛЬ или несколько ИСТОЧНИКОВ в КАТАЛОГ.

# Копировать файл
cp source.txt destination.txt
# Копировать каталог рекурсивно
cp -r source_dir destination_dir

8. mv

Перемещение или переименование файлов и каталогов. Переименовать ИСТОЧНИК в ЦЕЛЬ или переместить ИСТОЧНИК(И) в КАТАЛОГ.

# Переместить файл
mv source.txt destination.txt
# Переименовать файл
mv oldname.txt newname.txt

9. rm

Удаление файлов или каталогов.

# Удалить файл
rm filename.txt
# Удалить каталог и его содержимое
rm -r directory_name

10. chmod

Изменение прав доступа к файлу. Изменить режим каждого ФАЙЛА на МОД. С параметром --reference, изменить режим каждого ФАЙЛА на режим ФАЙЛА-ОБРАЗЦА.

# Сделать файл исполняемым
chmod +x script.sh
# Установить конкретные права
chmod 755 filename.txt

11. chown

Изменение владельца и группы файла.

  • изменяет владельца и/или группу каждого указанного файла.
# Изменить владельца файла
chown username filename.txt
# Изменить владельца и группу каталога рекурсивно
chown -R username:group directory_name

12. ps

Отображение информации о запущенных процессах.

  • отображает информацию о выбранных активных процессах. Для получения обновляемой информации используйте top.
# Показать все запущенные процессы
ps aux
# Показать процессы конкретного пользователя
ps -u username
# Показать все процессы, запущенные от root
ps -U root -u root u

13. kill

Отправка сигнала для завершения процесса.

  • по умолчанию сигнал для kill - TERM. Используйте -l или -L для отображения доступных сигналов. Особо полезные сигналы включают HUP, INT, KILL, STOP, CONT и 0. Альтернативные сигналы могут быть указаны тремя способами: -9, -SIGKILL или -KILL.
# Завершить процесс по PID
kill 1234
# Принудительное завершение процесса
kill -9 1234

14. top

Отображение системной информации в реальном времени, включая процессы.

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

15. htop

Интерактивный просмотрщик процессов.

  • это кроссплатформенный ncurses-базированный просмотрщик процессов. Он похож на top, но позволяет прокручивать вертикально и горизонтально, а также взаимодействовать с помощью указательного устройства (мыши). Вы можете наблюдать все процессы, запущенные на системе, вместе с их аргументами командной строки, а также видеть их в виде дерева, выбирать несколько процессов и выполнять действия над ними одновременно.
htop

16. df

Отображение использования дискового пространства.

  • отображает количество доступного дискового пространства на файловой системе, содержащей каждый указанный файл. Если файл не указан, показывается доступное пространство на всех текущих смонтированных файловых системах. Дисковое пространство по умолчанию отображается в 1К блоках, если не установлена переменная окружения POSIXLY_CORRECT, в этом случае используются 512-байтовые блоки.
# Показать использование дискового пространства в удобочитаемом формате
df -h

17. du

Оценка использования дискового пространства.

  • суммирует использование диска для набора файлов, рекурсивно для каталогов.
# Показать размер текущего каталога и подкаталогов
du -h
# Показать размер конкретного каталога
du -sh directory_name

18. tar

Архивация файлов.

  • программа архивации, предназначенная для хранения нескольких файлов в одном файле (архиве) и управления такими архивами. Архив может быть как обычным файлом, так и устройством (например, ленточным приводом, отсюда и название программы, которое означает ленточный архиватор), который может находиться как на локальной, так и на удаленной машине.
# Создать tar-архив
tar -cvf archive.tar file1 file2
# Распаковать tar-архив
tar -xvf archive.tar
# Создать сжатый tar.gz-архив
tar -czvf archive.tar.gz file1 file2
# Распаковать сжатый tar.gz-архив
tar -xzvf archive.tar.gz

19. gzip

Сжатие файлов.

  • уменьшает размер указанных файлов с использованием кодирования Лемпеля-Зива (LZ77). Всякий раз, когда это возможно, каждый файл заменяется файлом с расширением .gz, сохраняя при этом те же права собственности, режимы доступа и время модификации. (По умолчанию расширение z используется для MS-DOS, OS/2 FAT, Windows NT FAT и Atari.) Если файлы не указаны или указан файл "-", стандартный ввод сжимается в стандартный вывод. Gzip будет пытаться сжимать только обычные файлы. В частности, он проигнорирует символьные ссылки.
# Сжать файл
gzip filename.txt
# Распаковать файл
gunzip filename.txt.gz

20. find

Поиск файлов в иерархии каталогов.

  • ищет в дереве каталогов, начинающемся с каждого указанного начального пункта, оценивая выражение слева направо, в соответствии с правилами приоритета, пока результат не станет известен (левая сторона ложна для операций "и", истина для "или"), после чего find переходит к следующему имени файла. Если начальный пункт не указан, предполагается `.'.
# Найти файл по имени
find /path/to/search -name filename.txt
# Найти файлы, измененные за последние 7 дней
find /path/to/search -mtime -7

21. grep

Поиск шаблонов в файлах.

  • ищет PATTERNS в каждом ФАЙЛЕ. PATTERNS - это один или несколько шаблонов, разделенных символами новой строки, и grep выводит каждую строку, которая соответствует шаблону. Обычно PATTERNS следует заключать в кавычки, когда grep используется в командной строке.
# Искать шаблон в файле
grep 'pattern' filename.txt
# Искать рекурсивно во всех файлах в каталоге
grep -r 'pattern' /path/to/search

22. cat

Объединение и отображение содержимого файлов.

# Показать содержимое файла
cat filename.txt
# Объединить несколько файлов и показать результат
cat file1.txt file2.txt

23. less

Просмотр содержимого файла по одной странице за раз.

  • программа, похожая на more(1), но имеющая много дополнительных функций. Less не требует считывания всего файла перед запуском, поэтому с большими файлами он запускается быстрее, чем текстовые редакторы, такие как vi(1). Less использует termcap (или terminfo на некоторых системах), поэтому может работать на различных терминалах. Есть даже ограниченная поддержка печатных терминалов. (На печатном терминале строки, которые должны быть напечатаны вверху экрана, предшествуют символу "^".)
# Просмотреть файл
less filename.txt
# Прокрутка вперед и назад
# Вперед: Space или f
# Назад: b

24. tail

Отображение последней части файла.

  • выводит последние 10 строк каждого ФАЙЛА на стандартный вывод. При наличии более одного ФАЙЛА, перед каждым указывается имя файла.
# Показать последние 10 строк файла
tail filename.txt
# Показать последние 50 строк файла
tail -n 50 filename.txt
# Следить за обновлениями файла (полезно для логов)
tail -f filename.txt

25. head

Отображение первой части файла.

# Показать первые 10 строк файла
head filename.txt
# Показать первые 20 строк файла
head -n 20 filename.txt

26. awk

Мощный язык обработки текста.

# Показать первый столбец файла
awk '{print $1}' filename.txt
# Показать строки, где второй столбец больше 100
awk '$2 > 100' filename.txt

27. sed

Потоковый редактор для фильтрации и преобразования текста.

# Заменить 'old' на 'new' в файле
sed 's/old/new/g' filename.txt
# Удалить строки, содержащие шаблон
sed '/pattern/d' filename.txt

28. scp

Безопасное копирование файлов между хостами.

# Копировать файл на удаленный хост
scp localfile.txt username@remotehost:/path/to/remote/directory
# Копировать файл с удаленного хоста
scp username@remotehost:/path/to/remotefile.txt localfile.txt

29. rsync

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

# Синхронизировать локальный каталог с удаленным
rsync -avz /path/to/local/directory username@remotehost:/path/to/remote/directory
# Синхронизировать удаленный каталог с локальным
rsync -avz username@remotehost:/path/to/remote/directory /path/to/local/directory

30. wget

Неинтерактивный загрузчик файлов по сети.

# Скачать файл по URL
wget http://example.com/file.zip
# Скачать файл и сохранить его с другим именем
wget -O newfile.zip http://example.com/file.zip

31. curl

Инструмент для передачи данных с или на сервер.

# Скачать файл по URL
curl -O http://example.com/file.zip
# Скачать файл и сохранить его с другим именем
curl -o newfile.zip http://example.com/file.zip

32. apt-get

Утилита для работы с пакетами в системах, основанных на Debian.

# Обновить индекс пакетов
sudo apt-get update
# Установить пакет
sudo apt-get install package_name
# Удалить пакет
sudo apt-get remove package_name

33. yum

Менеджер пакетов для дистрибутивов на основе RPM.

# Установить пакет
sudo yum install package_name
# Удалить пакет
sudo yum remove package_name
# Обновить все пакеты
sudo yum update

34. pip

Менеджер пакетов для пакетов Python.

# Установить пакет
pip install package_name
# Удалить пакет
pip uninstall package_name
# Показать установленные пакеты
pip list

35. docker

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

# Загрузить образ из репозитория Docker
docker pull image_name
# Запустить контейнер из образа
docker run image_name
# Показать запущенные контейнеры
docker ps
# Остановить запущенный контейнер
docker stop container_id

36. systemctl

Управление системой и менеджером служб systemd.

# Запустить службу
sudo systemctl start service_name
# Остановить службу
sudo systemctl stop service_name
# Включить службу при загрузке системы
sudo systemctl enable service_name
# Отключить службу при загрузке системы
sudo systemctl disable service_name
# Проверить статус службы
sudo systemctl status service_name

37. journalctl

Запрос и отображение журналов от journald.

# Показать все журналы
sudo journalctl
# Показать журналы для конкретной службы
sudo journalctl -u service_name
# Следить за новыми записями в журнале
sudo journalctl -f

38. netstat

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

# Показать все сетевые соединения
netstat -a
# Показать прослушиваемые порты
netstat -l
# Показать сетевую статистику
netstat -s

39. ss

Утилита для исследования сокетов.

# Показать все открытые TCP-соединения
ss -t
# Показать все открытые UDP-соединения
ss -u
# Показать прослушиваемые сокеты
ss -l

40. ifconfig

Настройка сетевых интерфейсов.

# Показать информацию о сетевых интерфейсах
ifconfig
# Назначить IP-адрес интерфейсу
sudo ifconfig eth0 192.168.1.100

41. ip

Показывает/манипулирует маршрутами, устройствами, политиками маршрутизации и туннелями.

# Показать сетевые интерфейсы
ip a
# Назначить IP-адрес интерфейсу
sudo ip addr add 192.168.1.100/24 dev eth0
# Показать таблицу маршрутизации
ip route

42. ping

Отправляет пакеты ICMP ECHO_REQUEST к сетевым хостам.

# Пинговать хост
ping hostname
# Пинговать хост с указанным количеством пакетов
ping -c 4 hostname

43. traceroute

Показывает маршрут, по которому пакеты передаются к сетевому хосту.

# Проследить маршрут к хосту
traceroute hostname

44. nslookup

Запрашивает систему доменных имен (DNS) для получения отображения доменного имени или IP-адреса.

# Найти IP-адрес домена
nslookup domain.com

45. dig

Утилита для поиска в DNS.

# Выполнить DNS

-запрос
dig domain.com
# Выполнить обратный DNS-запрос
dig -x ip_address

46. hostname

Показывает или устанавливает имя хоста системы.

# Показать имя хоста
hostname
# Установить новое имя хоста
sudo hostname new_hostname

47. whoami

Показывает текущее имя пользователя.

whoami

48. sudo

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

# Выполнить команду от имени суперпользователя
sudo command
# Редактировать файл с привилегиями суперпользователя, используя nano
sudo nano filename.txt

49. passwd

Изменение пароля пользователя.

# Изменить собственный пароль
passwd
# Изменить пароль другого пользователя (только суперпользователь)
sudo passwd username

50. adduser

Добавление пользователя в систему.

# Добавить нового пользователя
sudo adduser username

51. usermod

Изменение учетной записи пользователя.

# Добавить пользователя в группу
sudo usermod -aG groupname username

52. deluser

Удаление пользователя из системы.

# Удалить пользователя
sudo deluser username

53. groupadd

Добавление новой группы.

# Добавить новую группу
sudo groupadd groupname

54. groupdel

Удаление группы.

# Удалить группу
sudo groupdel groupname

55. crontab

Планирование периодических заданий.

# Редактировать crontab текущего пользователя
crontab -e
# Показать запланированные задания текущего пользователя
crontab -l

56. at

Планирование выполнения команды на определенное время.

# Запланировать выполнение команды на определенное время
echo "command" | at 10:00

57. uptime

Показывает, как долго система работает.

uptime

58. free

Отображение использования памяти.

# Показать использование памяти в удобочитаемом формате
free -h

59. vmstat

Отчет о статистике виртуальной памяти.

# Показать статистику виртуальной памяти
vmstat

60. iostat

Отчет о статистике процессора и ввода/вывода.

# Показать статистику процессора и ввода/вывода
iostat

61. dmesg

Печать сообщений кольцевого буфера ядра.

# Показать все сообщения
dmesg
# Показать сообщения и следить за новыми
dmesg -w

62. lsblk

Показать информацию о блочных устройствах.

# Показать блочные устройства
lsblk

63. blkid

Нахождение и печать атрибутов блочного устройства.

# Показать атрибуты блочного устройства
blkid

64. mount

Монтирование файловой системы.

# Смонтировать файловую систему
sudo mount /dev/sdX1 /mnt

65. umount

Размонтирование файловой системы.

# Размонтировать файловую систему
sudo umount /mnt

66. fdisk

Управление таблицей разделов диска.

# Просмотр и редактирование разделов диска
sudo fdisk /dev/sdX

67. mkfs

Создание файловой системы Linux.

# Создать файловую систему ext4
sudo mkfs.ext4 /dev/sdX1

68. fsck

Проверка и восстановление файловой системы Linux.

# Проверить и восстановить файловую систему
sudo fsck /dev/sdX1

69. dd

Преобразование и копирование файла.

# Создать загрузочную USB-флешку
sudo dd if=path/to/image.iso of=/dev/sdX bs=4M status=progress

70. parted

Программа для управления разделами.

# Запустить parted на диске
sudo parted /dev/sdX

71. rsyslog

Обеспечивает быстрое, безопасное и масштабируемое ведение системных журналов.

# Перезапустить службу rsyslog
sudo systemctl restart rsyslog

72. logrotate

Вращает, сжимает и отправляет системные журналы по почте.

# Вручную повернуть журналы
sudo logrotate /etc/logrotate.conf

73. hostnamectl

Управление системным именем хоста.

# Установить системное имя хоста
sudo hostnamectl set-hostname new_hostname

74. timedatectl

Управление системным временем и датой.

# Показать текущие настройки времени
timedatectl
# Установить системный часовой пояс
sudo timedatectl set-timezone America/New_York

75. hwclock

Доступ к аппаратным часам.

# Показать текущее время аппаратных часов
sudo hwclock
# Установить аппаратные часы на текущее системное время
sudo hwclock --systohc

76. date

Показывает или устанавливает системную дату и время.

# Показать текущую дату и время
date
# Установить дату и время
sudo date MMDDhhmmYYYY

77. bc

Язык калькулятора с произвольной точностью.

# Запустить интерактивный калькулятор bc
bc

78. expr

Вычисление выражений.

# Выполнить арифметические операции
expr 2 + 2

79. xargs

Построение и выполнение командных строк из стандартного ввода.

# Использовать с find для удаления файлов
find /path/to/search -name "*.tmp" | xargs rm

80. alias

Создание псевдонима для команды.

# Создать псевдоним
alias ll='ls -la'
# Удалить псевдоним
unalias ll

81. echo

Вывод строки текста.

# Вывести строку
echo "Hello, World!"
# Вывести значение переменной
echo $HOME

82. env

Отображение или изменение окружения.

# Показать все переменные окружения
env
# Выполнить команду с измененными переменными окружения
env VAR=value command

83. export

Установка переменных окружения.

# Установить переменную окружения
export VAR=value
# Экспортировать переменную в окружение
export PATH=$PATH:/new/path

84. source

Выполнение команд из файла в текущем шелле.

# Выполнить скрипт
source script.sh

85. history

Отображение истории команд.

# Показать историю команд
history
# Очистить историю команд
history -c

86. alias

Создание псевдонима для команды.

# Создать псевдоним
alias ll='ls -la'
# Удалить псевдоним
unalias ll

87. man

Отображение руководства для команды.

# Показать руководство для ls
man ls

88. info

Отображение информации о командах.

# Показать информацию для ls
info ls

89. whatis

Отображение однострочного описания команды.

# Показать однострочное описание ls
whatis ls

90. apropos

Поиск по страницам руководства по ключевому слову.

# Искать ключевое слово в страницах руководства
apropos keyword

91. whereis

Поиск исполняемых файлов, исходных файлов и файлов руководства для команды.

# Найти файлы для ls
whereis ls

92. which

Поиск исполняемого файла, связанного с командой.

# Найти исполняемый файл для ls
which ls

93. type

Описание команды.

# Описать команду ls
type ls

94. sh

Выполнение команд в оболочке Bourne.

# Запустить скрипт оболочки
sh script.sh

95. bash

Выполнение команд в оболочке Bourne-again.

# Запустить скрипт оболочки
bash script.sh

96. zsh

Выполнение команд в оболочке Z.

# Запустить скрипт оболочки
zsh script.sh

97. ksh

Выполнение команд в оболочке Korn.

# Запустить скрипт оболочки
ksh script.sh

98. dash

Выполнение команд в оболочке Debian Almquist.

# Запустить скрипт оболочки
dash script.sh

99. screen

Мультиплексор терминала.

# Начать новую сессию screen
screen
# Повторно подключиться к отсоединенной сессии
screen -r

100. tmux

Мультиплексор терминала.

# Начать новую сессию tmux
tmux
# Повторно подключиться к отсоединенной сессии
tmux attach