Ответ
Основные команды Linux можно сгруппировать по их назначению:
Навигация и работа с файлами
pwd— вывести текущую рабочую директорию.ls— список содержимого директории (ls -laдля детального вывода).cd— сменить директорию (cd ~— в домашнюю,cd ..— на уровень выше).mkdir/rmdir— создать / удалить пустую директорию.cp,mv,rm— копировать, переместить/переименовать, удалить файлы/директории. Для директорий с-r(рекурсивно).
Просмотр и обработка содержимого
cat— вывести содержимое файла.less/more— постраничный просмотр.head/tail— вывести начало/конец файла (tail -fдля слежения за изменениями).grep— поиск по шаблону (grep -i "error" file.log).
Права и процессы
chmod— изменить права доступа (chmod 755 script.sh).ps— список процессов (ps aux | grep nginx).kill— отправить сигнал процессу (kill -9 PIDдля принудительного завершения).top/htop— интерактивный мониторинг процессов и ресурсов.
Системная информация и сети
df/du— информация о свободном месте на диске / размер файлов/директорий.ssh/scp— безопасное удалённое подключение и копирование файлов.tar— работа с архивами (tar -czvf archive.tar.gz ./folder/).
Практический пример: анализ логов
# Найти 10 последних ошибок в логе и сохранить их в файл
grep -i "error" /var/log/app.log | tail -n 10 > recent_errors.txt Ответ 18+ 🔞
А, ну вот, смотри, классика жанра, без этого никуда. Сидишь ты такой в терминале, а вокруг тебя эта тёмная пустошь, и ты нихуя не понимаешь, где находишься. Как в лесу, ёпта.
Где я, сука, и что вокруг?
pwd— это типа крик души: «Папа, где я?». Команда тебе честно ответит, в какой папке ты сейчас увяз.ls— «А что тут у нас?». Простоlsпокажет, что валяется на полу. Аls -la— это уже разбор полётов: покажет вообще всё, включая скрытые файлы, права доступа и кто тут главный. Пиздец как полезно.cd— команда для путешествий.cd ~— домой, к маме, на печку.cd ..— назад, на уровень выше, типа «ой, я не туда зашёл».mkdir/rmdir— создать папку и удалить пустую папку. Сrmdirбудь осторожен, она удаляет только пустые. Если там хоть один файл — будет тебе «директория не пуста», и сиди, мудак, разбирайся.cp,mv,rm— святая троица. Копировать, переместить (или переименовать, что одно и то же) и удалить. Хочешь удалить папку со всем её дерьмом внутри?rm -r. Это как «вынести всё ведро, не глядя». Охуенно мощно, но можно и ногу себе отстрелить, если не глядишь, что удаляешь.
Чтение и поиск: где тут суть?
cat— вываливает содержимое файла тебе прямо в терминал. Если файл на гигабайт — получишь поток сознания, который не остановить. Пиздец.less/more— для культурных людей. Показывают по страничке.less— вообще красавчик, туда-сюда листать можно.head/tail— «дай начало» и «дай конец».tail -f— это магия. Подключаешься к логу и смотришь, как он в реальном времени пишется. Как сериал, только про ошибки.grep— король поиска. «Найди мне все строки, где есть слово "error"».grep -i "error" file.log— и он найдёт, даже если оно с большой буквы. Спаситель, блядь.
Кто тут главный и что можно?
chmod— раздача прав.chmod 755 script.sh— значит, хозяин может всё, а остальные — только читать и запускать. Без этого твой скрипт — просто текстуха, которую никто не послушает.ps— «Какие процессы у меня тут бегают?».ps aux | grep nginx— классика: «А жив ли мой веб-сервер?».kill— команда-убийца. Вежливо просит процесс завершиться. Аkill -9 PID— это уже не просьба, это выстрел в голову. Принудительно и бесповоротно.top/htop— как диспетчер задач, только для крутых. Смотришь, какой процесс жрёт всю память, и думаешь: «Ну что за мудак?».
Инфа по системе и сети: что почём?
df— «Сколько свободного места на диске?». Срочно надо знать, когда всё падает.du— «А сколько места жрёт вот эта папка с фотками?». Часто открывает глаза, ёпта.ssh/scp— твой билет на другую машину. Подключиться и скопировать файлы так, чтобы никто не подслушал.tar— архиватор-упаковщик.tar -czvf archive.tar.gz ./folder/— взять папку, спрессовать её в один файл и чувствовать себя организованным человеком. Ненадолго.
А вот реальный пример, как это всё вместе работает: Допустим, сервер плюётся, а ты должен найти, в чём дело. Делаешь так:
# Выцепить 10 последних ошибок из лога и сложить их в отдельный файл, чтобы начальству показать
grep -i "error" /var/log/app.log | tail -n 10 > recent_errors.txt
Вот и вся магия. Сначала grep выковыривает все строки с «error», потом tail отрезает только десять самых свежих, а > скидывает это добро в файлик. Сидишь потом, читаешь эту подборку и понимаешь, что твой код — говно. Но зато знаешь, какое именно.