Топ крутых команд Linux — спасителей времени

Posted by

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

Подсказка: Начинающим же советую статью с базовыми операторами.

nl: нумерация строк

Порой приходится вычитывать и редактировать код прямо в CLI, ведь некоторые файлы не дублируются силами git на ноутбук намеренно. Такое встречается, например, при разработке вебхук-ботов. Если в большинстве IDE строки пронумерованы по умолчанию, то почему бы не сохранить комфорт и при работе с терминалом? Здесь поможет команда nl:

&&: комбинация независимых команд

Большинство линуксоидов знакомятся с конвейерами (pipe) на курсах и знают, как передать результат первой команды второй:

Но что писать bash, если понадобилось запустить несвязанные команды? Pipe в таком случае выпадает в ошибку. Здесь на помощь придет оператор «двойной амперсанд»:

Вывода у второй директивы нет, но файл появился:

pv: удивляем родителей

Это развлекательный инструмент, позволяющий имитировать скорый набор текста, как у хакеров в кино. Прежде чем баловаться этой красотой, установим pv:

Теперь запустим набор текста командами echo и pv:

Если быстро нажимать клавиши, можно ненароком стать сыном маминой подруги

at: отложенный запуск

Подходит для и̶м̶и̶т̶а̶ц̶и̶и̶ ̶р̶а̶б̶о̶т̶ы запуска команд в определенное время, под капотом используется утилита cron.

Подсказка: Если регулярных директив по расписанию собирается целая коллекция, лучше перейти на Apache Airflow. Гайд по установке ПО можно изучить здесь.

>: отправка логов в файл

Если на вашем сервере сидит проект из нескольких десятков взаимосвязанных модулей (например, сайт на Django), то мониторить в консоли все ошибки, с которыми сталкиваются посетители портала, просто бессмысленно. Лучше наладить вывод из главного файла проекта, впоследствии почитывать трейсбеки и исправлять возникающие проблемы:

cmatrix: raining code, как в «Матрице»

Прекрасный скринсейвер силами сторонней утилиты. Для запуска «дождя из кода» достаточно одноименной команды:

fold: подгонка под длину «не более 80 символов»

Еще одна сторонняя утилита от «жертв» Vim, судя по всему, ибо горизонтальная прокрутка там неудобная:

Посмотрим, как утилита разрубила код на куски не более 80 символов:

Не нравится мне это в случае с кодом (разорвал аргумент функции), жди ошибок. Но для текстовых файлов очень удобно:

Может, вы знаете утилиту для автоматических переносов строк в коде для Linux? Поделитесь в комментариях.

Заключение

Команды терминала представляют собой неотъемлемую часть эффективного управления операционной системой. Знание их и корректное применение способствуют повышению производительности и обеспечивают более глубокий контроль над проектом.

Добавить комментарий

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