Аргументы скрипта в Bash
На примерах сравниваем специальные переменные $@ и $* в Bash с кавычками и без них. Показываем разбиение аргументов с пробелами, объединение в одну строку и влияние разделителя IFS.
Фото: Nemuel Sereti / Pexels
Фото: Markus Spiske / Pexels
← Все темы
Статьи о Linux: настройка серверов, оптимизация систем, администрирование и лучшие практики для DevOps инженеров.
На примерах сравниваем специальные переменные $@ и $* в Bash с кавычками и без них. Показываем разбиение аргументов с пробелами, объединение в одну строку и влияние разделителя IFS.
Фото: Nemuel Sereti / PexelsСравниваем systemd timers и cron на практическом примере: создаём service и timer, запускаем задачу каждую минуту и включаем автозагрузку. Разбираемся, когда гибкость таймеров оправдана, а когда сотни unit-файлов только усложняют …
Фото: Kofi Nartey / UnsplashСобираем Raspberry Pi 5 с NVMe-диском и резервным питанием на аккумуляторах 18650. Разбираем комплект Geekworm, запуск вентилятора через Python-сервис, стресс-тесты и нюансы питания платы расширения.
Разбираем Патч Бармина и поведение команды rm -rf /* в Unix-системах. Показываем раскрытие glob оболочкой, права на каталоги, интерактивный режим и защиту --preserve-root=all.
Фото: Cup of Couple / PexelsЧитаем поля SigBlk, SigIgn и SigCgt в /proc/PID/status и переводим шестнадцатеричные битовые маски в имена сигналов Linux. В конце собираем готовый Bash-скрипт для диагностики процесса.
Разбираем утилиту timeout для ограничения времени работы команд и скриптов в Linux. Показываем длительности, сигналы завершения, удалённый запуск через SSH и вариант на чистом Bash.
Фото: Annushka Ahuja / PexelsСоздаём ограниченное окружение chroot для SSH-пользователя в Linux. Копируем Bash и зависимости через ldd, настраиваем ChrootDirectory и по одной добавляем разрешённые утилиты.
Фото: Abdulgafur Ögel / PexelsНастраиваем общий доступ к терминалу Linux и macOS через tty-share без тяжёлых видеозвонков. Разбираем публичную и локальную сессии, режим только для чтения, завершение процесса и альтернативные инструменты.
Фото: Mikhail Nilov / PexelsСравниваем скорость запуска Bash и Zsh вручную и с помощью shellbench. Заодно разбираем плагины Oh My Zsh, автодополнение и место Dash среди быстрых POSIX-оболочек.
Фото: Gonzalo Álvarez Balcazar / PexelsРазбираем разделы справочной системы man: команды, системные вызовы, форматы файлов, административные утилиты и функции ядра. Показываем поиск через man -k, страницы intro и вывод справки в HTML.
Фото: Tima Miroshnichenko / PexelsИщем Linux-шрифты с кириллическими глифами через fc-list и сопоставляем их со шрифтами ImageMagick. Затем Bash-скрипт генерирует образцы русской буквы «А» для каждого найденного файла.
Фото: Eugenia Remark / PexelsОбъясняем коды завершения после SIGINT и SIGTERM и настраиваем обработчики сигналов через trap в Bash. Разбираем, почему получается код 130, как изменить поведение скрипта и почему SIGKILL нельзя перехватить.
Фото: Emiliano Rodríguez / PexelsLinux — основная категория BashDays, посвященная системному администрированию, DevOps и эксплуатации серверов.
В разделе публикуются материалы по:
Здесь собраны практические статьи с примерами команд, конфигураций и разбором реальных кейсов из эксплуатации Linux-серверов.