Гид по технологиям

Bash

Конкатенация строк в Bash — 3 способа
Bash 4 min read

Конкатенация строк в Bash — 3 способа

Конкатенация в Bash — это объединение двух или более строк. В Bash это можно сделать с помощью оператора +=, последовательной записи переменных или printf; примеры и рекомендации в статье.

for в Bash: руководство и примеры
Bash 6 min read

for в Bash: руководство и примеры

Цикл for в Bash помогает автоматизировать повторяющиеся задачи: перебирайте числа, строки, списки файлов и используйте шаги, условия и встроенные утилиты. В статье — синтаксис, практические примеры, альтернативы, распространённые ошибки и чек-листы для разработки и тестирования скриптов.

Переменные в Bash — полное руководство
Bash 10 min read

Переменные в Bash — полное руководство

Переменные в Bash — это имена для строк и чисел, используйте $NAME для подстановки, экспортируйте только то, что нужно, и всегда кавычьте значения с пробелами. Проверяйте ввод и отлаживайте через echo.

Условные тесты Bash: [ ] vs [[ ]]
Bash 10 min read

Условные тесты Bash: [ ] vs [[ ]]

Двойные скобки [[ ]] в Bash дают удобный синтаксис с поддержкой globbing и regex; [ ] и test — POSIX-совместимая альтернатива для портируемости. Используйте nullglob и массивы для безопасной проверки шаблонов файлов.

Чтение файла построчно в Bash — безопасный шаблон
Bash 7 min read

Чтение файла построчно в Bash — безопасный шаблон

Покажу надёжный шаблон для построчного чтения файлов в Bash, объясню подводные камни и дам практические альтернативы и чек‑листы для продакшен‑скриптов. Используйте IFS=, ключ -r и конструкцию || [[ -n ]] для корректной обработки последних строк без перевода строки.

Bash printf: форматирование вывода
Bash 9 min read

Bash printf: форматирование вывода

printf в Bash даёт точный контроль над выводом: форматные спецификаторы, ширина и точность полей, обработка escape-последовательностей и аккуратное объединение аргументов. Используйте echo для простого вывода, а printf — когда нужна выровненная или детерминированная печать.

Перенаправление вывода в bash: >, >> и tee
Bash 5 min read

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

Используйте `>` для перезаписи файла, `>>` для добавления, а `tee` — чтобы одновременно видеть вывод в терминале и записать его. Не забудьте о stderr и ротации логов.

Манипулирование строками в Bash
Bash 6 min read

Манипулирование строками в Bash

Bash предоставляет встроенные операторы и синтаксис для создания, изменения и извлечения частей строк без внешних утилит. Для простых задач используйте встроенные возможности; для сложных преобразований — awk/sed.

Bash case … esac — руководство
Bash 5 min read

Bash case … esac — руководство

Оператор case в Bash сравнивает одно значение с набором шаблонов и выполняет код для совпадающего случая. Используйте ;; для закрытия ветки, * для обработчика по умолчанию и | для перечисления альтернатив.

Семафоры в Bash: что это и как реализовать
Bash 8 min read

Семафоры в Bash: что это и как реализовать

Семафор — это примитив синхронизации, который ограничивает одновременный доступ к ресурсу. В Bash безопаснее использовать атомарные файловые блокировки (flock, mkdir) вместо простых переменных. В статье есть примеры, шаблоны тестов, чек-листы и несколько практических реализаций семафоров для скриптов.

Ошибки в Bash: set -e, -u и pipefail
Bash 8 min read

Ошибки в Bash: set -e, -u и pipefail

Добавьте в начало скрипта строгие опции set (-e, -u, -o pipefail) — они заставят скрипт завершаться при ошибках, ловить неинициализированные переменные и перехватывать сбои внутри пайпов. Для диагностики используйте set -x и trap ERR; для ситуаций, где нужен исключающий контроль, применяйте явную проверку кодов возврата.

Конкатенация строк в Bash — примеры и советы
Bash 4 min read

Конкатенация строк в Bash — примеры и советы

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

Как безопасно и эффективно использовать eval в Bash
Bash 8 min read

Как безопасно и эффективно использовать eval в Bash

eval полезен для выполнения динамически сформированных команд в текущем шелле, но опасен при работе со строками из ненадёжных источников. Используйте альтернативы (parameter expansion, command substitution, declare -n, printf -v), применяйте проверку и белые списки, и используйте eval только когда других опций нет.

Безопасное программирование на Bash
Bash 9 min read

Безопасное программирование на Bash

Этот документ объясняет основные приёмы «defensive programming» в Bash: корректный shebang, всегда заключать переменные в кавычки, останавливать скрипт при ошибках, отладка через xtrace, защита от имён файлов‑подвохов и локальные переменные в функциях.