🐧 Полезные команды Linux для новичка

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


1. Команда touch: создание файлов и управление временем

Команда touch — настоящий многозадачный инструмент. Она используется для двух основных целей: создания пустых файлов и изменения временных меток существующих.

📄 Пример 1: создание пустого файла

Самый частый сценарий использования touch — быстрое создание пустого файла. Это нужно, когда вы планируете позже заполнить его данными (логи, конфигурации).

touch my_new_script.sh

Эта команда создаст в текущей папке файл my_new_script.sh нулевого размера.

🕒 Пример 2: изменение времени модификации

Эта возможность породила много шуток среди администраторов. С помощью touch можно изменить время последнего изменения файла.

# Формат: MMDДЧЧмм (месяц, день, часы, минуты)
touch -t 05070915 report.txt

Разбор: 0507 — 5 мая, 0915 — 09:15 утра. Теперь файл «верит», что был изменён 5 мая в 9:15.

⚠️ Важно: Используйте эту возможность этично. В некоторых файловых системах есть и другие метаданные, которые могут выдать вас (например, crtime — время создания).


2. Команда find: мастер поиска файлов

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

🔍 Поиск по имени

Найти все файлы, в названии которых есть слово hawaii (фото из отпуска).

find -name "*hawaii*"
  • -name — искать по имени.
  • *hawaii* — звёздочки означают «любое количество любых символов». Найдутся hawaii_01.jpg, my_hawaii_vacation.txt и hawaii.png.

⏱️ Поиск недавно изменённых файлов

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

find -mmin +0 -mmin -10
  • -mmin +0 — время изменения больше 0 минут назад.
  • -mmin -10 — время изменения меньше 10 минут назад.

Если результат слишком большой, используйте less:

find -mmin +0 -mmin -120 | less

Это найдёт файлы за последние 2 часа и покажет постранично.


3. Команда grep: детектив для текста

Если find ищет файлы, то grep ищет внутри файлов. Это незаменимый инструмент для поиска строк, слов и паттернов в логах, коде и конфигурациях.

📝 Практический урок: как работает grep

Создадим три простых файла:

  • mary1.txt → Mary had a little lamb
  • mary2.txt → Mary had a little cow
  • mary3.txt → Mary had a little too much to drink

Ищем слово «Mary» во всех файлах mary*.txt:

grep Mary mary*.txt

Результат:

mary1.txt:Mary had a little lamb
mary2.txt:Mary had a little cow
mary3.txt:Mary had a little too much to drink

А теперь слово «cow»:

grep cow mary*.txt
# Вывод: mary2.txt:Mary had a little cow

💡 Совет: grep -r "ошибка" /var/log/ рекурсивно ищет все упоминания «ошибка» в логах. А grep -i игнорирует регистр букв.


4. Полезные команды для повседневной работы

🧑 whoami и who: узнайте о пользователях

  • whoami — выводит ваше текущее имя пользователя. Полезно, если вы часто переключаетесь через su.
  • who — показывает список пользователей, работающих в системе, их терминалы и время входа.

📅 date и cal: время и календарь

date +%D    # только дата (MM/ДД/ГГ)
date +%T    # только время
date --date 'Dec 25'  # день недели для Рождества

cal          # текущий месяц
cal 2025     # весь 2025 год
cal 12 2025  # декабрь 2025
cal -m       # неделя с понедельника

📍 pwd и dir: где я?

  • pwd (Print Working Directory) — выводит полный путь к текущей папке. Спасает, когда вы заблудились.
  • dir — работает как ls -l, подробный список содержимого.

🔢 wc: считаем строки, слова и символы

wc my_notes.txt
# Вывод: 15 210 1200 my_notes.txt
# (15 строк, 210 слов, 1200 символов)

5. Перенаправление вывода: >, >>, 2> и tee

Это сердце философии Unix. Вы можете направлять вывод команд не только на экран, но и в файлы или даже в другие команды.

📁 > и >>: сохраняем вывод в файл

ls -l > directory_listing.txt   # создаст или перезапишет файл
date >> directory_listing.txt    # допишет дату в конец файла

⚠️ 2>: ловим ошибки

Поток ошибок (stderr) перенаправляется в файл:

some_broken_program 2> error.log

🔧 tee: смотреть и сохранять одновременно

tee — «тройник»: пишет вывод и на экран, и в файл.

ls -l | tee my_dir_list.txt

Вы увидите список файлов на экране, и он же сохранится в файл. Опция -a дописывает (tee -a).


6. Поиск информации о командах: whatis, whereis, which

  • whatis grep — кратко объясняет, что делает команда: «print lines matching a pattern».
  • whereis pico — показывает, где находятся исполняемый файл, исходники и страница руководства.
  • which java — полный путь до исполняемого файла, который будет запущен. Критично, когда установлено несколько версий.

🖨️ echo: простое повторение

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

echo "Hello, world!"
echo "Купить молоко" > todo.txt

7. Завершение сессии: exit

Команда exit закрывает текущую сессию терминала. Если вы работаете в текстовом режиме, она завершит сеанс и вернёт вас к экрану входа в систему.

🌟 Совет на будущее: Изучите конвейеры (pipes — символ |). Они позволяют объединять команды: например, ls -l /proc | less или grep "error" log.txt | wc -l (подсчитать количество ошибок).


📊 Итоговая таблица самых полезных команд

  • touch — создать файл или обновить время
  • find — найти файлы по критериям
  • grep — найти текст внутри файлов
  • tee — вывести на экран и сохранить в файл
  • date / cal — дата, время и календарь
  • wc — статистика по строкам, словам и символам
  • whoami / who — информация о пользователях
  • whatis / whereis / which — поиск документации и путей
 

Оставьте комментарий

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