Yesterday

10 команд Linux, которые помогут вам экономить часы каждую неделю

Это перевод оригинальной статьи 10 Linux Commands That Will Save You Hours Every Week.

Подписывайтесь на телеграм-канал usr_bin, где я публикую много полезного по Linux, в том числе ссылки на статьи в этом блоге.

Введение: Командная строка — это не страшно, это суперспособность.

Лично я работаю с Linux уже много лет, будь то на серверах, в контейнерах, в WSL или в боевых средах, этот набор команд Linux постоянно выручает меня в работе.

Дело не в заучивании 300 команд. Речь идёт о 10 действительно важных командах — тех, которые, при эффективном использовании, сэкономят вам часы каждую неделю.

Давайте начнём.

1. ripgrep (rg) — самый быстрый способ найти что угодно

Если вы до сих пор используете grep, вы многое упускаете. ripgrep — это как `grep` после трёх чашек кофе.

Почему это экономит ваше время

  • Молниеносный рекурсивный поиск
  • Более интеллектуальный поиск файлов (игнорирует файлы из .gitignore)
  • Более чистый вывод

Пример

rg "api_key" ./project"api_key" ./project

Эта команда мгновенно находит каждый файл, содержащий "api_key".

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

2. fzf — превратите терминал в поисковую систему.

fzf(fuzzy finder) — это аналог встроенных в терминал программ Spotlight или Alfred, работающих в командной строке.

Почему экономит ваше время

  • Не точный поиск файлов, каталогов, веток git, истории — чего угодно
  • Можно комбинировать с find, rg или ls для максимальной эффективности

Пример

history | fzf

Мгновенно переходите к любой команде, которую вы когда-либо запускали.

Эффективная комбинация

vim $(fzf)

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

3. tmux — инструмент повышения производительности при работе в многооконном режиме

Однажды освоив tmux, вы уже никогда не будете использовать SSH так, как раньше.

Почему это экономит ваше время

  • Постоянные сессии (перезапуск сервера? Без проблем)
  • Разделённые панели для многозадачности
  • Возможность повторного подключения к удалённым сессиям
tmux new -s work
# ... do your tasks
tmux detach
tmux attach -t work

Это как иметь несколько мониторов внутри вашего терминала.

4. watch — Следите за всем

Нужно мониторить процесс? Проверять логи многократно? Отслеживать метрику?
Перестаньте вручную запускать команды снова и снова.

Пример

watch -n 2 df -h

Запускает df -h каждые 2 секунды. Идеально подходит для развертывания, отладки или нагрузочного тестирования.

5. xargs — автоматизируйте рутинные задачи

xargs используется, когда вы хотите взять результат выполнения одной команды и использовать его для каких-либо полезных целей.

Пример: Удалить все файлы .pyc

find . -name "*.pyc" | xargs rm

Пример: выполнить операцию для каждой соответствующей строки.

cat urls.txt | xargs -I {} curl -O {}

Если вы выполняете монотонные задачи, xargs становится вашим лучшим другом.

6. htop — удобный для человека менеджер задач

htop делает top похожим на Windows 98.

Почему это экономит ваше время

  • Наглядная статистика работы процессора и памяти в реальном времени.
  • Простой процесс уничтожения
  • Мгновенная сортировка по частоте использования.

Идеально подходит для

  • Отладки высокой нагрузки CPU
  • Проверки утечек памяти
  • Мониторинга фоновых задач

Просто запустите:

htop

Вы удивитесь, как раньше обходились без него.

7. du -sh — куда девается моё дисковое пространство?

Иногда ваша система заполняется совершенно неожиданно. du поможет вам быстро найти виновника.

Пример: увидеть размеры директорий

du -sh *

Пример: Поиск больших файлов

du -ah . | sort -rh | head -20

Когда Docker, логи или случайные кеш-папки съедают место, эта команда спасет ситуацию.

8. rsync — умный способ копирования файлов

rsync — это cp, каким он хотел бы быть.

Почему это экономит ваше время

  • Быстрее, чем scp
  • Возобновляет прерванные передачи
  • Копирует только изменённые файлы
  • Сохраняет права доступа в неизменном виде.

Пример

rsync -avz source/ user@server:/path/

Идеально подходит для резервного копирования, развертывания и быстрой передачи данных.

9. tar — сжатие, извлечение, архивирование… Быстро

Вероятно, вы используете zip, но tar создан для рабочих процессов Linux.

Сжать директорию

tar -czvf project.tar.gz project/

Распаковать архив

tar -xzvf project.tar.gz

Почему это экономит время

  • Обрабатывает огромные директории.
  • Поддерживает потоковую передачу.
  • Идеально подходит для резервного копирования и логов.

10. curl — мощный инструмент для работы с API и сетями.

curl универсальный инструмент для сетевых операций.

Пример: быстрый запрос API

curl https://api.github.com/users/aashish

Отправка POST данных

curl -X POST -d '{"email":"test@example.com"}' \
     -H "Content-Type: application/json" \
     https://api.example.com/login

Почему это экономит время

  • Мгновенно проверяет эндпоинты
  • Отладка проблем аутентификации
  • Получайте ресурсы на лету.

Как только вы освоите основы curl, ваш браузер станет планом Б.

Бонус: 5 простых команд, которые в сумме приведут к значительной экономии.

Зачем останавливаться на десяти?

  • alias — Преобразуйте длинные команды в короткие.
  • tldr — Дружелюбные man-страницы
  • ncdu — Удобный анализ дискового пространства
  • pbcopy/ xclip — Копировать напрямую из терминала
  • history | grep something — Мгновенный поиск старых команд

Небольшие инструменты. Большое влияние.

Вывод: возможности вашего терминала зависят от знаний команд, которыми вы владеете.

Linux — это не заучивание сотен команд, а наличие под рукой нужных инструментов, которые экономят минуты на повседневных задачах и часы на еженедельной работе.

На этом все! Спасибо за внимание! Если статья была интересна, подпишитесь на телеграм-канал usr_bin, где будет еще больше полезной информации.