Программный код на тёмном экранеФото: Luis Gomes / Pexels ← Все темы Тема Bashdays

Bash

Скрипты и практические примеры на Bash: автоматизация, администрирование Linux и DevOps-подходы к работе с инфраструктурой.

146материалов
Сначала новые

Статьи по теме

Страница 6 из 13

bash

Многопоточное чтение файлов на Bash через FIFO

Практический Bash-скрипт для параллельной обработки строк файла с ограничением числа потоков через FIFO. Разбираем именованный канал, файловый дескриптор и простой семафор без GNU parallel.

bash

Защита от повторного запуска через lckdo

Используем lckdo из пакета moreutils, чтобы второй экземпляр скрипта не запускался одновременно с первым. Рассматриваем lock-файл, ожидание через -w и безопасный запуск периодической задачи cron.

bash

Тернарный оператор Bash и его ловушки

Исследуем тернарный оператор Bash внутри арифметической подсистемы и сравниваем его с классической связкой && и ||. Пример показывает работу восьмеричных значений, вычисление обеих ветвей и неочевидные ошибки сравнения.

bash

Как отвязать запущенный процесс от терминала

Спасаем долгий процесс, случайно запущенный без nohup или screen. Комбинация Ctrl+Z и команды bg, disown и fg позволяют остановить задачу, продолжить её в фоне и отвязать от текущей оболочки.

bash

Как base64 игнорирует посторонние символы

Разбираем ключ -i в GNU base64, который пропускает символы вне алфавита кодирования. Примеры показывают, как декодировать изменённые строки и почему такое сокрытие данных нельзя считать настоящим шифрованием.

bash

Измерение времени Bash-скриптов через EPOCHREALTIME

Функция uTIME измеряет интервалы выполнения Bash-кода в микросекундах с помощью EPOCHREALTIME. Сравниваем функции в текущей оболочке и subshell, а также преобразование даты через printf и внешнюю команду date.

bash

Лишний cat и другие Bash-антипаттерны

Разбираем распространённые Bash-антипаттерны из учебных скриптов: лишний cat перед cut, grep и tr, а также небезопасный перебор файлов через ls. Показываем более прямые и устойчивые варианты команд.

bash

Как рендерить шаблоны в Bash через envsubst

Создаём шаблон конфигурации nginx и подставляем разные значения для production и stage через envsubst. Сравниваем функцию рендеринга с heredoc и разбираем передачу переменных окружения.

linux

Как переназначить Ctrl+C в Linux

Смотрим текущие настройки терминала через stty -a и меняем символ прерывания процесса с Ctrl+C на другое сочетание клавиш. Разбираем возврат настройки, запись в shell-конфиг и альтернативу через xbindkeys.

bash

Как кэшировать управляющие последовательности tput

Разбираемся, почему многократные вызовы tput замедляют Bash-скрипт, и один раз сохраняем управляющие последовательности терминала в переменные. Показываем печать, экранирование и практические однострочники.

linux

Как запускать долгие скрипты в screen

Разбираем запуск долгих задач в именованных screen-сессиях, подключение через -r и -x и корректное отсоединение сочетанием Ctrl+A, d. Показываем фоновый запуск, передачу команд в сессию и организацию логирования.

bash

IP-watchdog на Bash для перезагрузки роутера

Пишем Bash-watchdog, который проверяет доступность интернета и наращивает интервалы попыток восстановления связи. Для физической перезагрузки роутера подключаем недорогое USB-реле и управляем им через последовательный порт.

О направлении

Что входит в тему

Bash — раздел BashDays, посвященный Bash, Shell scripting и работе в терминале Linux.

В разделе публикуются материалы по:

  • Bash-скриптам
  • Shell scripting
  • Однострочникам
  • Автоматизации задач
  • Cron
  • Работе с файлами
  • Обработке данных
  • Администрированию Linux

Здесь собраны практические примеры скриптов, приемов работы в терминале и способов автоматизации повседневных задач администратора.