BashMaster
رفتن به کانال در Telegram
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help
نمایش بیشتر8 726
مشترکین
+124 ساعت
+1217 روز
+21130 روز
آرشیو پست ها
8 726
⚙️ xan
✔️Инструмент командной строки CLI, который можно использовать для обработки CSV файлов непосредственно из
bash.
▶️Он позволяет легко просматривать, фильтровать, разбивать на части, объединять, сортировать и объединять CSV файлы, а также предоставляет большой набор составных команд, которые можно объединять в цепочку для выполнения широкого спектра типичных задач.
▶️xan также использует свой собственный язык выражений, чтобы вы могли выполнять сложные задачи, которые невозможно выполнить, полагаясь на самые простые команды. Этот минималистичный язык был адаптирован для данных CSV и намного быстрее, чем оценка типичных динамически типизированных языков, таких как Python, Lua, JavaScript и т. д.
➡️ xan можно использовать для отображения CSV файлов в терминале для удобства исследования и даже для создания простых визуализаций данных.
🐙 Перейти на Github
🔨 bash_help8 726
⚙️ ssh-audit
✔️Инструмент для аудита конфигурации серверов и клиентов SSH. Он анализирует настройки, выявляет слабые, устаревшие или непроверенные криптографические примитивы, а также помогает усилить безопасность SSH-туннелей.
➡️ Основные функции:
💠Поддержка протоколов SSH 1 и 2 для серверов.
💠Анализ конфигурации клиента SSH.
💠Захват баннера, распознавание устройства, программного обеспечения и операционной системы, обнаружение сжатия.
💠Сбор алгоритмов обмена ключами, ключей хоста, шифрования и кодов аутентификации сообщений.
💠Вывод информации об алгоритмах: доступность, удаление/отключение, статус (безопасный, слабый, устаревший и т. д.).
💠Рекомендации по алгоритмам (добавление или удаление на основе распознанной версии ПО).
💠Анализ совместимости версий SSH на основе информации об алгоритмах.
💠Историческая информация из OpenSSH, Dropbear SSH и libssh.
💠Сканирование политик для обеспечения соблюдения усиленной/стандартной конфигурации.
➡️ Режимы работы:
💠Стандартный аудит — по умолчанию инструмент перечисляет типы ключей хоста, обмены ключами, шифры, MAC-адреса и другую информацию, а затем выделяет их цветом в выводе. Криптографические примитивы с потенциальными проблемами отображаются жёлтым цветом, с серьёзными недостатками — красным.
💠Аудит политики — при использовании опции
-P или --policy информация о ключах хоста, обменах ключами, шифрах, MAC-адресах и т. д. сравнивается с набором ожидаемых значений, определённых в указанном файле политики. Если всё совпадает, выводится короткое сообщение о прохождении. В противном случае отображаются несовпадающие поля.
▶️ssh-audit работает на Linux и Windows, поддерживает Python 3.8–3.13 и не имеет зависимостей.
🐙 Перейти на Github
🔨 bash_help8 726
📘 На платформе Mentorix вышел курс — «Nginx на практике: от деплоя до production»
Практический курс по настройке Nginx для реальных задач: от базовой конфигурации до использования в production.
В курсе:
• настройка и конфигурация Nginx
• работа как reverse proxy
• SSL и HTTPS
• балансировка нагрузки
• подготовка конфигурации для production
Начать можно бесплатно — вводная часть курса доступна без оплаты.
Скидка действует 48 часов
👉 Пройти курс
8 726
⚙️ Гарантированная очистка даже после краша
✔️Скрипт упал с ошибкой, а временный файл остался. Или соединение не закрылось. Или lock-файл завис. Это классика и
trap решает её в одну строчку.
➡️ Что делает trap
▶️Регистрирует функцию, которая запустится при выходе из скрипта — неважно, нормальном или аварийном.
▶️Вы один раз описываете логику очистки и забываете об этом:
#!/bin/bash
set -euo pipefail
tmpfile=$(mktemp)
cleanup() {
rm -f "$tmpfile"
echo "Cleaned up temporary files"
}
trap cleanup EXIT # сработает при любом выходе
# Основная работа
echo "Processing..." > "$tmpfile"
cat "$tmpfile"
▶️EXIT это сигнал, который bash отправляет при завершении скрипта. Функция cleanup удалит временный файл, даже если скрипт упал на середине.
➡️ Что можно убирать через trap
▶️Временные файлы и директории, lock-файлы, открытые соединения с базой, фоновые процессы, которые скрипт запустил сам.
➡️ Почему это лучше, чем rm в конце скрипта
▶️rm в конце не выполнится, если скрипт упадёт раньше. trap cleanup EXIT выполнится всегда — это гарантия на уровне интерпретатора.
🖼️ Ссылка на источник
🔨 bash_help8 726
⚙️ Semaphore UI
✔️Современный веб-интерфейс для управления популярными инструментами DevOps, который позволяет запускать задачи, управлять конфигурациями и автоматизировать процессы. Он поддерживает Ansible, Terraform, OpenTofu, Terragrunt, PowerShell, Bash, Python и другие инструменты.
➡️ Основные возможности:
💠Запуск задач. Можно запускать плейбуки Ansible, код Terraform и OpenTofu, а также скрипты Bash и PowerShell прямо из браузера.
💠Мониторинг выполнения. В интерфейсе доступны логи, статус выполнения и ошибки для анализа и устранения неполадок.
💠Планирование задач. Позволяет автоматизировать выполнение задач по указанным времени или интервалам с помощью cron-выражений.
💠Управление инвентарём. Определяет целевые системы (серверы, виртуальные машины, контейнеры или облачные ресурсы), на которых будут выполняться задачи. Поддерживает различные типы инвентарёв, включая статические файловые, динамические и на основе состояния Terraform.
💠Группы переменных (Variable Groups/Environments). Контексты конфигурации, которые содержат чувствительную информацию, такую как переменные окружения, секреты и параметры, необходимые задачам при выполнении.
💠Контроль доступа. Ролевая модель с разрешениями на уровне проектов и функциями совместной работы в команде. Пользователи могут иметь разные роли (администратор, редактор, просмотрщик) с различными возможностями.
💠Управление секретами. Безопасное хранение и шифрование чувствительных данных, включая SSH-ключи, API-токены и переменные окружения.
💠Интеграция через API. Полноценный API с документацией OpenAPI/Swagger для интеграции с корпоративными системами и рабочими процессами.
🐙 Перейти на Github
🔨 bash_help
8 726
⚙️ Bashly
✔️Приложение для командной строки, которое позволяет создавать функциональные инструменты для командной строки на Bash. Оно упрощает разработку за счёт автоматической генерации bash-скриптов на основе простой конфигурации в формате YAML.
➡️ Основные особенности:
💠Генерация единого самодостаточного bash-скрипта. Bashly создаёт финальный скрипт, который может парсить и проверять ввод пользователя, предоставлять справочные сообщения и выполнять код для каждой команды.
💠Парсинг командной строки. Извлекает опциональные или обязательные позиционные аргументы, опциональные флаги, команды и стандартные флаги (например,
--help и --version).
💠Генерация текстов помощи и экранов справки, показывающих аргументы, флаги и команды инструмента (работает и для подкоманд).
💠Предотвращение выполнения скрипта, если командная строка некорректна.
💠Предоставление места для ввода кода для каждой функции инструмента и его объединение в финальный скрипт.
💠Дополнительные (опциональные) функции в стиле фреймворка: цветной вывод, управление конфигурационными файлами (формат INI), парсинг YAML, автодополнение Bash и другие.
💠Автогенерация документации в формате Markdown и man-страниц для скрипта.
▶️Код для каждой команды сохраняется в отдельном файле, который можно редактировать и повторно генерировать при необходимости.
🐙 Перейти на Github
🔨 bash_help8 726
⚙️ QuickStack
✔️Open-source платформа, которая позволяет развернуть и управлять приложениями на своём сервере. Отличная альтернатива облачным сервисам вроде Vercel, Heroku или Azure — без лишних расходов и с полным контролем над инфраструктурой.
➡️ Основные характеристики:
💠Основа технологии. QuickStack работает на базе k3s (лёгкой версии Kubernetes), Traefik (для маршрутизации трафика), Longhorn (распределённое блочное хранилище для многоузловых кластеров) и BuildKit (для сборки образов).
💠Управление через веб-интерфейс. Позволяет разворачивать приложения из Git-репозиториев, управлять доменами, мониторить ресурсы, настраивать резервное копирование и контролировать доступ пользователей.
💠Однокомандная установка. QuickStack можно развернуть на VPS с помощью одной команды.
💠Автоматизация. Платформа автоматизирует полный жизненный цикл приложения: сборку образов из Git, деплой, получение SSL-сертификатов через Let’s Encrypt, управление томами и резервное копирование.
💠Поддержка Git и Docker. Позволяет деплоить приложения напрямую из публичных или приватных Git-репозиториев, а также использовать Docker-образы из Docker Hub или частных реестров.
💠Мониторинг и логи. Предоставляет панель мониторинга для отслеживания использования ресурсов и производительности приложений, а также возможность просмотра логов в реальном времени.
💠Веб-терминал. Даёт доступ к веб-терминалу прямо внутри контейнера для отладки.
💠Управление ресурсами. Позволяет устанавливать ограничения по CPU, RAM и хранилищу для каждого приложения.
➡️ Для кого QuickStack:
💠Разработчики, которые хотят быстро разворачивать и управлять приложениями без необходимости заниматься администрированием серверов.
💠Небольшие команды и стартапы, ищущие экономичное и простое в использовании решение для деплоя.
💠Системные администраторы, которые хотят управлять инфраструктурой через удобный интерфейс.
🐙 Перейти на Github
🔨 bash_help
8 726
⚙️ Purple
✔️Продвинутый менеджер SSH подключений. Работает прямо в терминале и имеет ряд удобных и полезных функций.
➡️ Особенности:
💠Работа с конфигурационными файлами для поиска серверов, к которым необходимо подключаться;
💠Интеграция с 16 облачными провайдерами;
💠Получение статуса и статистики о каждом из подключенных серверов;
💠Возможность управления контейнерами на удалнных машинах, подключенных по SSH.
🐙 Перейти на Github
🔨 bash_help
8 726
⚙️ Tennis
✔️Небольшой CLI-инструмент для красивого отображения CSV-таблиц в терминале. Он автоматически форматирует таблицы под размер окна, применяет темы и стили, а также работает с CSV, JSON и SQLite.
➡️ Основные особенности:
💠Автолейаут. Таблица подстраивается под ширину окна терминала: колонки сжимаются пропорционально, длинные значения обрезаются с многоточием.
💠Автоматическое определение темы. Утилита определяет цвет фона терминала (светлый или тёмный) и выбирает подходящую цветовую схему.
💠Автоформат чисел. Если в колонке есть числа (например, цены или ID), tennis выравнивает их по правому краю и добавляет разделители разрядов.
💠Поддержка разных форматов. Инструмент работает с CSV, TSV, JSON, JSONL (NDJSON) и SQLite. При чтении CSV он пытается определить правильный разделитель по первым нескольким строкам.
▶️Tennis подходит для быстрого просмотра логов, проверки экспортов из баз данных, оценки структуры файла перед обработкой. Инструмент ориентирован на пользователей, которые часто работают с табличными данными в терминале и хотят удобное отображение без графического интерфейса
🐙 Перейти на Github
🔨 bash_help
8 726
📘 На платформе Mentorix вышел курс — «DevOps-инженер: от основ до продакшена»
Если вы хотите не просто изучить инструменты, а понять, как собирается реальная DevOps-инфраструктура — этот курс даёт полный системный подход.
🔧 Что внутри:
• Linux, администрирование и bash
• Docker и Kubernetes (реальная оркестрация)
• Terraform и Ansible (Infrastructure as Code)
• CI/CD: GitLab CI, GitHub Actions, Jenkins
• мониторинг и логирование: Prometheus, Grafana, ELK
• безопасность, сети, балансировка нагрузки
• облака (AWS/GCP/Azure)
📊 Формат:
— 82 урока и 784 шага
— 320 теорий, 325 тестов, 139 задач практических задач
— практика в каждом блоке
💡 Важно:
вы не просто изучаете инструменты — вы собираете end-to-end инфраструктуру, которую можно положить в портфолио и показывать на собеседованиях.
💰 скидка 40%, действует 24 часа
👉 Пройти курс
8 726
⚙️ ONCE
✔️Инструмент для упрощения развертывания и управления веб-приложениями, основанными на Docker.
➡️ Основные особенности:
💠Упрощение настройки. ONCE берёт на себя рутину по настройке инфраструктуры: автоматически устанавливает Docker (если он ещё не есть), настраивает SSL-сертификаты через Let’s Encrypt, создаёт тома для данных и запускает приложение.
💠TUI-дашборд и CLI. Платформа предоставляет терминальный интерфейс с навигацией по клавишам (TUI) для мониторинга приложений и командную строку для автоматизации через скрипты.
💠Совместимость. ONCE работает на Linux и macOS. Приложения можно запускать на физическом сервере, облачном VPS, Raspberry Pi или ноутбуке.
💠Встроенные приложения. В комплект входят приложения 37signals (Writebook, Basecamp, Hey), но можно установить и любой совместимый Docker-образ.
💠Автоматические обновления и бэкапы. Платформа обеспечивает регулярные обновления приложений и резервное копирование данных.
🐙 Перейти на Github
🔨 bash_help
8 726
⚡️ С 5 по 9 мая не будет интернета как минимум в Москве и Питере.
Сотовые операторы предупредили абонентов об отключении интернета в целях безопасности.
🧠 Используй это время наилучшим образом!
Изучай новые технологии или закрой пробелы в знаниях по своему стеку.
🤩 Admin Books – наш дочерний канал. В нем собрана техническая литература для сетевых и системных администраторов, ИБ специалистов и не только.
Ссылка для своих: https://t.me/+MTZEYIhkVIY1MDIy
8 726
⚙️ Proxmox Manager
✔️Скрипт на Bash, который объединяет инструменты командной строки Proxmox (
qm, pct) в интерактивное меню или скриптовый интерфейс. Никаких демонов, агентов, зависимостей, кроме тех, что поставляются с Proxmox VE.
➡️ Некоторые функции инструмента:
💠перечисление виртуальных машин и контейнеров;
💠просмотр статуса;
💠запуск, остановка и перезапуск;
💠управление снимками (snapshot management);
💠доступ к консоли;
💠интеграция с SPICE;
💠проверка прав доступа.
🐙 Перейти на Github
🔨 bash_help8 726
⚙️ Одна функция вместо десяти команд
✔️Каждый раз, когда нужно распаковать архив, начинается одно и то же. Это
tar.gz или tar.bz2? Какие там флаги у unrar? А 7z вообще как запускается? Приходится лезть в документацию или историю команд. Самописная функция extract() решает именно эту проблему.
▶️Скопируйте функцию в ~/.bashrc или ~/.zshrc:
extract() {
if [ -f "$1" ]; then
case "$1" in
*.tar.bz2) tar xjf "$1" ;;
*.tar.gz) tar xzf "$1" ;;
*.bz2) bunzip2 "$1" ;;
*.rar) unrar x "$1" ;;
*.gz) gunzip "$1" ;;
*.tar) tar xf "$1" ;;
*.tbz2) tar xjf "$1" ;;
*.tgz) tar xzf "$1" ;;
*.zip) unzip "$1" ;;
*.7z) 7z x "$1" ;;
*) echo "unknown archive" ;;
esac
fi
}
▶️Потом применяете изменения:
source ~/.bashrc
▶️Функция определяет тип архива по расширению файла и сама выбирает нужную команду. Вы просто пишете extract имя_файла и получаете распакованное содержимое. Без флагов, без гугления, без ошибок из-за опечатки в параметрах.
▶️Поддерживаемые форматы: tar.gz, tar.bz2, bz2, rar, gz, tar, tbz2, tgz, zip, 7z.
▶️Один синтаксис для любого формата. Если файл не распознан, функция скажет unknown archive вместо того, чтобы молча упасть.
➡️ Что можно добавить:
▶️Базовая версия уже полезна, но её можно немного доработать. Например, добавить проверку, что нужная утилита вообще установлена, или выводить имя команды перед запуском. Вот расширенный вариант:
extract() {
if [ ! -f "$1" ]; then
echo "'$1' не найден"
return 1
fi
case "$1" in
*.tar.bz2) tar xjf "$1" ;;
*.tar.gz) tar xzf "$1" ;;
*.bz2) bunzip2 "$1" ;;
*.rar) unrar x "$1" ;;
*.gz) gunzip "$1" ;;
*.tar) tar xf "$1" ;;
*.tbz2) tar xjf "$1" ;;
*.tgz) tar xzf "$1" ;;
*.zip) unzip "$1" ;;
*.7z) 7z x "$1" ;;
*) echo "Формат не поддерживается: '$1'" ; return 1 ;;
esac
}
🖼️ Ссылка на источник
🔨 bash_help8 726
⚙️ ttyd
✔️Легковесный инструмент командной строки, который позволяет делиться терминалом через веб-интерфейс. Он «оборачивает» любую команду (например,
bash, zsh или любую другую утилиту) и запускает защищённый веб-интерфейс, доступный из любого современного браузера.
➡️ Основные характеристики:
💠Кроссплатформенность. Работает на macOS, Linux, FreeBSD/OpenBSD, OpenWrt, Windows.
💠Высокая производительность. Построен на базе библиотек libuv (асинхронный ввод-вывод) и WebGL2 (ускоренный рендеринг терминала).
💠Полноценный терминал. Использует библиотеку xterm.js с поддержкой CJK-символов (китайских, японских, корейских) и методов ввода.
💠Поддержка передачи файлов. Графическая интеграция ZMODEM с lrzsz или trzsz.
💠Поддержка SSL/TLS через OpenSSL/Mbed TLS.
💠Гибкая настройка. Возможность запускать любые команды с аргументами, настройка прав доступа (read-only или запись), поддержка IPv6 и UNIX-сокетов.
💠Удалённый доступ. Позволяет получать доступ к терминалу с любого устройства, имеющего браузер.
💠Совместная работа. Несколько пользователей могут одновременно взаимодействовать с одним терминалом.
💠Демонстрации и обучение. Помогает наглядно показывать терминальные операции.
🐙 Перейти на Github
🔨 bash_help8 726
«Мы не собирались делать новый продукт. Но в какой-то момент стало понятно, что так больше не работает»
В какой-то момент становится ясно: транзакционные письма достойны отдельного сервиса, а не «очередного раздела».
Так появился Haskimail — сервис, выросший из очень конкретной боли рынка.
В интервью для StartupDrive CPO Haskimail Анастасия Филиппова рассказывает, как всё это собиралось: от первой идеи до понимания, в чём на самом деле суть продукта и почему он вообще появился.
📌 Как это было — читайте тут.
8 726
Repost from Admin Books
📖 Linux Command Line and Shell Scripting Techniques
Год: 2022
Автор: Vedran Dakic, Jasmin Redzepagic
Книга посвящена работе с командной строкой Linux и написанию shell-скриптов для автоматизации задач. Авторы объясняют базовые команды для управления файлами, процессами и пакетами, а также показывают, как использовать инструменты для обработки текста, такие как grep, sed и cut. Отдельное внимание уделено сетевым операциям, включая настройку SSH, DNS и передачу файлов.
Разбираются сценарии автоматизации: работа с переменными, циклами, функциями и обработкой ввода-вывода. Приводятся примеры реальных задач, включая настройку серверов, резервное копирование и развёртывание окружений. Книга подойдёт системным администраторам и инженерам, которые хотят автоматизировать рутину и эффективно использовать CLI в Linux.
#linux
🤩Admin Books
8 726
⚙️ CodinGame
✔️Онлайн-платформа, которая превращает изучение программирования в увлекательную игру. Создана для разработчиков всех уровней — от новичков до профессионалов.
▶️Миссия CodinGame — помочь людям «прокачать» навыки кодинга через игровые задачи и соревнования, а компаниям — находить таланты на основе реальных умений, а не дипломов.
➡️ Некоторые особенности платформы:
💠Визуализация кода. Результат выполнения кода виден сразу, что позволяет быстро оценивать свои действия.
💠Интерактивность. Ошибки приводят к «проигрышу», что мотивирует искать оптимальные решения.
💠Поддержка языков. Более 25 языков программирования, включая популярные и экзотические (Bash, C, C++, C#, Clojure, D, Dart, F#, Go, Groovy, Haskell, Java и т. д.)
💠Адаптивность. Подходит для новичков и опытных разработчиков, предлагая задания разной сложности.
🖼️ Перейти на сайт
🔨 bash_help
8 726
🔥 В YADRO запустили стажировку «Импульс» – и это рабочий вход в индустрию: по итогам прошлого года >85% стажёров остались в компании
В карточках собрали реальные отзывы участников: про первые проекты, поддержку команды и то самое чувство, когда понимаешь, что выбрал правильное направление ❤️
В программе только то, что действительно нужно для прокачки опыта:
– реальные задачи вместо учебных проектов
– работа с инженерами и участие в развитии продуктов
– возможность предлагать решения и влиять на результат
– лекции и разборы от практиков
– гибкий формат: офис / удалёнка / гибрид
Можно попробовать себя в разработке, бизнесе и продуктовых ролях – в этом году открыто более 30 направлений:
🔵 C, системное программирование 🔵 Разработка на Go, Python, C++ 🔵 Тестирование 🔵 Математика и алгоритмы 🔵 Системное и сетевое администрирование, техподдержка 🔵 Проектный менеджмент и маркетинг 🔵 ещё 20+ трековНа стажировку берут: – бакалавров от 2 курса – магистров от 1 курса – студентов профильных колледжей (18 лет и старше) Если хочется подготовиться заранее – есть гайды от Истового инженера: ➖Всё про стажировки и старт карьеры ➖Разбор телеком-направления ➖Личный опыт инженеров ➖Материалы про инженерные профессии Регистрация уже доступна на сайте
8 726
⚙️ Glances
✔️Кроссплатформенный инструмент для мониторинга системы, который позиционируется как альтернатива
top и htop для операционных систем GNU/Linux, BSD, Mac OS и Windows. Он предоставляет данные о состоянии системы в режиме реального времени через удобный интерфейс.
➡️ Основные возможности:
💠Мониторинг ключевых показателей системы. В реальном времени отслеживаются загрузка CPU, использование памяти, дискового пространства, сетевой трафик.
💠Отслеживание процессов и пользователей. Можно видеть запущенные процессы, подключённых пользователей.
💠Дополнительные параметры. Доступны данные о температурах, напряжениях, скорости вращения вентиляторов.
💠Поддержка контейнеров. Инструмент работает с различными системами управления контейнерами, такими как Docker и LXC.
💠Пользовательский интерфейс. Данные отображаются на удобной для чтения дашборде, который может динамически адаптироваться под размер терминала.
💠Удалённый мониторинг. Доступ возможен через веб-интерфейс, командную строку или API (XML-RPC и RESTful) в режиме клиент-сервер.
💠Экспорт данных. Статистику можно экспортировать в файлы, внешние базы данных временных рядов, CSV или напрямую в STDOUT.
💠Интеграция с AI-ассистентами. В версиях Glances 4.5.1 и выше есть встроенный MCP-сервер, который позволяет ИИ-ассистентам (например, Claude, Cursor) напрямую запрашивать данные через Glances.
🐙 Перейти на Github
🔨 bash_help
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
