TCP и UDP-запросы через /dev в Bash
Проверяем TCP- и UDP-порты средствами Bash через /dev/tcp и /dev/udp, когда в системе нет curl, wget или telnet. Добавляем timeout, читаем код возврата и сравниваем подход с netcat.
Фото: Brett Sayles / Pexels
Фото: Luis Gomes / Pexels
← Все темы
Скрипты и практические примеры на Bash: автоматизация, администрирование Linux и DevOps-подходы к работе с инфраструктурой.
Проверяем TCP- и UDP-порты средствами Bash через /dev/tcp и /dev/udp, когда в системе нет curl, wget или telnet. Добавляем timeout, читаем код возврата и сравниваем подход с netcat.
Фото: Brett Sayles / PexelsИсследуем бесконечный Bash-цикл, канал до grep -m1 и незаметный SIGPIPE. Смотрим коды сигналов, процессы подоболочки и способы корректно остановить cat после закрытия конвейера.
Фото: Pavel Danilyuk / PexelsРазбираем Bash-скрипт spr.sh — консольный справочник для поиска записей и фрагментов кода по нескольким тегам. Конфигурация хранится в текстовом файле, а фильтрация реализована однострочником awk.
Фото: Tima Miroshnichenko / 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 / PexelsСобираем локальный генератор TOTP-кодов для двухфакторной аутентификации на Bash. Извлекаем секрет из QR-кода через zbarimg, генерируем OTP с oathtool и делаем меню для нескольких сервисов.
Фото: Annushka Ahuja / PexelsПрячем ASCII-сообщение в девяти битах прав доступа Linux-файлов. На Bash разбираем сдвиги битов, восьмеричные режимы chmod и кодирование текста последовательностью файлов.
Фото: Magda Ehlers / PexelsРазбираем heredoc в Bash на практических примерах с cat, sed, перенаправлением в файл и удалённым запуском команд по SSH. Показываю, как управлять подстановкой переменных и отступами.
Фото: Mikhail Nilov / PexelsBash-скрипт для интерактивного проброса TCP-портов через SSH jump-сервер. Готовое меню помогает подключаться к службам во внутренних сетях, не меняя конфигурацию вручную.
Фото: Thang Nguyen / PexelsОграничиваем SSH-пользователя интерактивным меню разрешённых административных команд. Bash-скрипт, ForceCommand и точечное правило sudoers дают перезапускать сервисы без полноценного доступа к серверу.
Фото: Fernando Narvaez / PexelsBash — раздел BashDays, посвященный Bash, Shell scripting и работе в терминале Linux.
В разделе публикуются материалы по:
Здесь собраны практические примеры скриптов, приемов работы в терминале и способов автоматизации повседневных задач администратора.