← Назад к вопросам

Назовите пять команд Linux, состоящих из двух букв

1.0 Junior🔥 91 комментариев
#Linux и администрирование

Комментарии (1)

🐱
deepseek-v3.2PrepBro AI5 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Пять двухбуквенных команд Linux

В мире Linux существует множество утилит, названия которых состоят всего из двух символов. Эти команды, несмотря на краткость, являются мощными инструментами для администрирования, отладки и автоматизации. Как опытный DevOps Engineer, я регулярно использую их в скриптах, мониторинге и устранении неисправностей.

1. wc (Word Count)

Эта утилита подсчитывает строки, слова и байты в текстовых данных. В DevOps-практике она незаменима для быстрой аналитики лог-файлов, проверки размера выводов других команд.

Пример использования:

# Подсчет количества строк в файле конфигурации nginx
wc -l /etc/nginx/nginx.conf

# Подсчет общего количества строк во всех лог-файлах приложения
cat /var/log/app/*.log | wc -l

Ключевые флаги:

  • -l — только строки.
  • -w — только слова.
  • -i — интерактивный режим (полезен для скриптовых проверок "условие-действие").

2. cp (CoPy)

Фундаментальная команда для копирования файлов и директорий. В DevOps её важность сложно переоценить: копирование конфигов, бэкапов, артефактов сборки, шаблонов.

Пример использования:

# Копирование конфигурации с созданием бэкапа
cp -a /etc/nginx/sites-available/default /etc/nginx/sites-available/default.backup.$(date +%Y%m%d)

# Рекурсивное копирование директории (например, для подготовки данных)
cp -r /opt/app/data /tmp/app_data_backup

Ключевые флаги:

  • -r или -R — рекурсивно (для директорий).
  • -a — архивный режим (сохраняет все атрибуты и рекурсивно).
  • -v — подробный вывод (verbose).

3. ps (Process Status)

Одна из самых важных команд для диагностики. Показывает информацию о запущенных процессах. В повседневной работе DevOps-инженера используется постоянно: для поиска "съевших" память процессов, проверки статуса демонов, определения PID.

Пример использования:

# Показать все процессы в удобном для чтения формате
ps aux

# Найти процесс по имени (например, docker-демон)
ps aux | grep dockerd

# Показать процессы в иерархическом виде (дерево)
ps -ef --forest

Ключевые флаги и комбинации:

  • aux — классический набор для вывода всех процессов пользователя.
  • -K — специфичный формат.
  • p — выбор по PID.

4. rm (ReMove)

Команда для удаления файлов и директорий. Требует предельной осторожности, особенно при работе с -r и -f. В DevOps часто используется в скриптах очистки (CI/CD пайплайны, временные файлы), но всегда с продуманными безопасными паттернами.

Пример использования:

# Удаление временных файлов сборки в CI-скрипте
rm -rf /tmp/build_artifacts_*

# Безопасное удаление логов старше 7 дней (часто в cron)
find /var/log/app -name "*.log" -mtime +7 -exec rm {} \;

Ключевые флаги:

  • -r — рекурсивное удаление директорий.
  • -f — принудительное, без запросов.
  • -i — интерактивный режим (запрос подтверждения для каждого файла — для безопасности).

5. ss (Socket Statistics)

Современная замена устаревшей команде netstat. Показывает детальную статистику по сокетам (сетевые соединения, порты). Для DevOps-инженера, работающего с сетевыми сервисами (веб-серверы, балансировщики, базы данных), это основной инструмент диагностики проблем с подключениями и проверки слушающих портов.

Пример использования:

# Показать все слушающие TCP-порты (например, для проверки, что nginx запущен на 80 порту)
ss -tln

# Показать установленные соединения к конкретному порту (например, 5432 - PostgreSQL)
ss -t state established dst :5432

# Показать процессы, связанные с сокетами (аналог 'netstat -p')
ss -tlnp

Ключевые флаги:

  • -t — TCP.
  • -u — UDP.
  • -l — только слушающие сокеты.
  • -n — выводить номера портов, а не имена служб.
  • -p — показать процесс, использующий сокет.

Заключение для DevOps

Эти двухбуквенные команды — не просто исторический курьёз, а краеугольные камни эффективной работы в shell. Они составляют основу для более сложных пайпов (|) и сценариев. Например, связка ps aux | grep <service> или ss -tln | grep :80 — это ежедневный хлеб при мониторинге состояния сервисов. Понимание их возможностей и тонкостей (например, опасности rm -rf / или разницы между ss и netstat) отличает опытного инженера от новичка. В инфраструктуре как код (IaC) и CI/CD-пайплайнах эти команды часто используются в provisioning - скриптах (например, cp для шаблонов, rm для очистки).