BashMaster
Ir al canal en Telegram
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help
Mostrar más8 730
Suscriptores
+624 horas
+127 días
+21230 días
Archivo de publicaciones
8 730
⚙️ i3lock-fancy
✔️Bash-скрипт для систем Linux, который расширяет функциональность блокировщика экрана. Он делает снимок рабочего стола, размывает фон и добавляет значок и текст блокировки.
➡️ Некоторые преимущества i3lock-fancy:
💠улучшает эстетику стандартного i3lock за счёт размытия и возможностей настройки;
💠легко устанавливается и используется с минимальными зависимостями;
💠поддерживает несколько мониторов и разные разрешения экрана;
💠позволяет настраивать значки и цветовые схемы.
➡️ Некоторые опции скрипта:
-h, --help — выводит меню помощи
-d, --desktop — пытается минимизировать все окна перед блокировкой;
-g, --greyscale — устанавливает серый фон вместо цветного;
-p, --pixelate — пикселирует фон вместо размытия, работает быстрее;
-f <имя шрифта>, --font <имя шрифта> — устанавливает собственный шрифт;
-t <текст>, --text <текст> — устанавливает собственное текстовое приглашение;
-l, --listfonts — выводит список возможных шрифтов для использования с -f/--font;
-n, --nofork — не создаёт дочерний процесс i3lock после запуска.
🐙 Перейти на Github
🔨 bash_help8 730
+5
Амбициозные проекты, удалёнка и рост в сфере DevOps — звучит как работа мечты! Отправляйте резюме до 8 июня и присоединяйтесь к команде YADRO! 🧑💻
Как получить оффер за 3 дня? Подробности на карточках выше — листайте!
Оставляйте заявку — мы ждём именно вас!
8 730
⚙️ Extraterm
✔️Открытый эмулятор терминала, который поддерживает оболочки
bash, zsh и fish.
➡️ Некоторые особенности Extraterm:
💠Два режима: нормальный и курсорный. В первом режиме работает традиционный эмулятор терминала, во втором можно перемещаться по экрану курсором, как в текстовом редакторе.
💠Редактирование с несколькими курсорами. Этот режим позволяет редактировать текст, который уже находится на экране, и готовить сложные команды.
💠Интеграция с оболочками. Она открывает такие возможности, как создание кадров вокруг вывода команд, повторное использование вывода команд и редактирование текста на месте.
💠Поддержка кросс-платформенности. Работает в Linux, macOS и Windows (с использованием Cygwin).
🐙 Перейти на Github
🔨 bash_help8 730
⚙️ Если вы работаете с сетями, мониторингом, DevOps или администрированием — стоит заглянуть на Конференцию GetNet .
➡️ 6 июня в 11:00
Онлайн бесплатно, рега тут
Офлайн в Москве с бесплатным трансфером от метро
✔️Что будет:
▶️Практические доклады, часть уже выложена на сайте
▶️Темы: сети, безопасность, автоматизация, отказоустойчивость
▶️Возможность пообщаться, задать вопросы, обсудить подходы
Полезно, если хочется выйти за рамки привычных команд и услышать, как с теми же задачами справляются другие.
8 730
⚙️ Android-Apps-and-Data-Backup-and-Restore-Linux-Bash-Script
✔️Bash-скрипт для полного резервного копирования приложений и данных устройства Android. Он позволяет создавать резервные копии и восстанавливать данные, используя инструмент
ADB (Android Debug Bridge).
➡️ Описание скрипта:
💠Скрипт выполняет инкрементальное резервное копирование. Он проверяет, есть ли уже файлы резервных копий в текущем каталоге, и при необходимости пропускает их. Сохраняются только новые приложения и недостающие данные.
💠Если добавить параметр -shared, то скрипт будет копировать данные с SD-карты. По умолчанию он не включает содержимое карты памяти.
➡️ Как использовать скрипт
💠Включить отладку по USB на устройстве.
💠Создать новый каталог на компьютере, например MyDevice.
💠Скопировать скрипт backupAndRestoreAndroidDevide.sh в MyDevice и перейти в этот каталог.
💠Подключить устройство к компьютеру через ADB в режиме отладки, например, с помощью USB-кабеля.
💠Запустить скрипт для создания резервной копии: bash backupAndRestoreAndroidDevide.sh backup.
💠Дождаться завершения процесса.
💠Подключить устройство для восстановления данных и запустить скрипт для восстановления: bash backupAndRestoreAndroidDevide.sh restore
🐙 Перейти на Github
🔨 bash_help8 730
Работаете с VDI? Хотите узнать, как безопасно организовать удаленные рабочие места в 2025?
Атаки типа Living off the Land делают использование классических ОС опасными. Но именно на таких системах работают самые распространенные тонкие клиенты для доступа к VDI. Есть ли альтернативное решение, сочетающее защищенность и управляемость?
29 мая, 11:00 — круглый стол с экспертами Tonk, Space VDI и «Лаборатории Касперского».
Реальные кейсы. Без теории. Только практический опыт.
Регистрируйтесь!
8 730
⚙️ beeps
✔️Репозиторий содержит коллекцию bash-скриптов для воспроизведения музыки через динамик ПК с помощью команды beep.
▶️В репозитории представлены сценарии для воспроизведения различных музыкальных треков, например, aerodynamic.sh, alarm.sh, carramelldansen.sh и других.
🐙 Перейти на Github
🔨 bash_help
8 730
⚙️ Bash-скрипт для подключения к Wi-Fi
✔️Этот bash-скрипт упрощает процесс подключения к сетям Wi-Fi в системе Linux. Cкрипт предназначен для работы в системах Linux с NetworkManager и
nmcli.
#!/bin/bash
# Function to display available Wi-Fi SSIDs
list_wifi_networks() {
echo "Available Wi-Fi Networks:"
nmcli dev wifi list
}
# Function to connect to a Wi-Fi network
connect_to_wifi() {
echo "Enter the name (SSID) of the Wi-Fi network you want to connect to:"
read ssid
echo "Enter the password for the Wi-Fi network:"
read -s password
# Use nmcli to connect to the specified Wi-Fi network
sudo nmcli dev wifi connect "$ssid" password "$password"
}
# Display available Wi-Fi networks (function call)
list_wifi_networks
# Option to connect to a Wi-Fi network
echo "Do you want to connect to a Wi-Fi network? (yes/no):"
read choice
if [ "$choice" = "yes" ]; then
#call connect wifi function
connect_to_wifi
else
echo "No network connection requested. Exiting."
fi
▶️Скрипт использует команду
nmcli, которая представляет собой клиент командной строки для NetworkManager. С помощью этого скрипта вы можете легко получить список доступных сетей Wi-Fi и подключиться к сети, указав SSID и пароль.
🐙 Подробнее на Github
🔨 bash_help8 730
⚙️ Bash-скрипт для мониторинга использования процессора и памяти в Linux
✔️Bash-скрипт может использоваться для проверки производительности системы в реальном времени, а также для сбора статистики использования с течением времени. Скрипт может собирать информацию об использовании из файла
/proc/stat, а затем сохранять ее в логах.
▶️Скрипт также можно настроить на отправку оповещения по электронной почте, если загрузка ЦП или памяти превышает определенный порог.
▶️Кроме того, скрипт может использоваться для запроса информации из системы, такой как модель ЦП, использование и средние значения нагрузки. С помощью этой информации скрипт может использоваться для создания отчетов и графиков, которые предоставляют обзор использования системы.
➡️ Простой скрипт непрерывного мониторинга ЦП и памяти в Linux, показанный ниже, — отличный способ отслеживать производительность вашей системы:
#!/bin/bash
# This script monitors CPU and memory usage
while :
do
# Get the current usage of CPU and memory
cpuUsage=$(top -bn1 | awk '/Cpu/ { print $2}')
memUsage=$(free -m | awk '/Mem/{print $3}')
# Print the usage
echo "CPU Usage: $cpuUsage%"
echo "Memory Usage: $memUsage MB"
# Sleep for 1 second
sleep 1
done
▶️Сохраните указанный выше скрипт в текстовый файл, сделайте его исполняемым и запустите.
➡️ Ниже приведены другие инструменты/команды, которые можно использовать для мониторинга использования ЦП и памяти в системе Linux:
💠free: команда показывает общий объем свободной и используемой физической и подкачиваемой памяти в системе, а также буферов и кэшей, используемых ядром.
💠top: команда обеспечивает динамический просмотр работающей системы в реальном времени. Она может отображать сводную информацию о системе, а также список задач, которые в данный момент управляются ядром Linux.
💠htop: интерактивный просмотрщик процессов для Linux. Это текстовое приложение, которое отображает информацию о процессах в удобном для пользователя виде.
💠vmstat: команда выводит информацию о процессах, памяти, подкачке, блочном вводе-выводе, ловушках и активности ЦП.
💠ps: команда используется для отображения информации о текущих запущенных процессах.
💠iostat: команда выводит статистику ЦП и статистику ввода/вывода для устройств и разделов.
🖼️ Ссылка на источник
🔨 bash_help8 730
📡 Ты в ИБ? Тогда тебе к нам.
@svplatform — новости, вебинары, практические разборы.
Без спама. Только по делу.
8 730
⚙️ 19 полезных shell-скриптов на все случаи жизни
✔️Командная строка и те невообразимые вещи, которые с ее помощью можно творить, — визитная карточка UNIX и всех ее наследников. А где есть командная строка, там есть скрипты. И сегодня... нет, мы не будем учиться писать скрипты, мы рассмотрим наиболее полезные из них, те, что ты сможешь применять ежедневно для решения самого разного круга задач, начиная от сводки погоды и веб-сервера в одну строку и заканчивая ботом для твиттера в десять строк и скриптом для автоматического запуска любого торрент-клиента.
▶️Сразу оговорюсь, что я вовсе не приверженец шаманизма и ни в коем случае не призываю тебя сидеть в зелено-черной консоли и набирать кучу букв, чтобы выполнить действия, для которых в графическом интерфейсе достаточно навести мышку на нужный элемент. Однако я убежден, что для решения многих задач консоль и скрипты годятся гораздо лучше графического интерфейса и поэтому пренебрегать ими никак нельзя. Тем более что любая DE позволяет создать для скрипта иконку, так что для его запуска даже не надо будет открывать консоль.
➡️ Содержание статьи
💠Простые примеры
💠Десктоп
💠Google, Twitter, Dropbox и торренты
💠Вместо выводов
🖼️ Дочитать статью
🔨 bash_help
8 730
⚙️ bash-stdops
✔️Коллекция скриптов Bash, написанных Джеймсом Черти. Они упрощают различные операции, включая поиск файлов, замену текста и модификацию контента.
➡️ Некоторые скрипты из коллекции:
💠
walk — рекурсивно перечисляет файлы из указанного каталога
💠walk-run — выполняет команду для всех файлов
💠sre — заменяет вхождения указанной строки или шаблона регулярного выражения, поддерживает сопоставление без учёта регистра и регулярные выражения
💠git-sre — выполняет sre в корне репозитория Git для замены текста внутри файлов
💠path-tr, path-uppercase, path-lowercase — обрабатывает путь к файлу, чтобы преобразовать имя файла в верхний или нижний регистр
💠autoperm — устанавливает подходящие разрешения для файлов или каталогов
💠path-is — печатает путь и выходит со статусом 0, если файл является бинарным или текстовым.
▶️Списки из коллекции bash-stdops используются для автоматизации задач, таких как управление сессиями Tmux, замена текста в репозитории Git, безопасное копирование и вставка из буфера обмена и другие.
🐙 Перейти на Github
🔨 bash_help8 730
С вас требуют безопасность, а процессы настроены на удачу? 🧐
Слёрм создал инструмент для самодиагностики DevSecOps-процессов: вы быстро поймёте, где слабые места и что нужно усилить, чтобы ваша зона ответственности была под надёжным контролем 🛡
🚀 Что получите:
✔️ экспресс-оценку зрелости по ключевым зонам (secure coding, пайплайны, секреты и др.),
✔️ чеклист с практическими шагами,
✔️ план улучшений для себя и команды.
➡️ Вместо разрозненных мер и «пожарного режима» вы получите чёткую картину и реальные инструменты для усиления процессов. Безопасность перестанет быть точкой риска и станет встроенной частью вашей инженерной рутины.
👉 Получить доступ к проверке ТУТ📌
8 730
⚙️ Сборник примеров программ на bash
💠
fping_chk — быстрая групповая проверка хостов на доступность
#!/bin/bash
attempts=$(($2+1))
## all working nodes
# {3..19} {22..24} {27..28} {30..38}
declare -a sc613='2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 22 23 24 27 28 30 31 32 33 34 35 36 37 38'
# {3..19} {22.24}
declare -a sc619='3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 22 23 24'
function check_613() {
echo 'Проверка доступности хостов сети '$ip_h 'из '$(uname -n)
for (( count=1; count < $attempts; count++ )); do
echo '-----------[ step' $count'/'$(($attempts-1))' ]' $(date +%d.%m.%y) $(date +%H:%M) '---------'
for ip in $sc613; do
if ! [[ $(fping -qa ${ip_h}.${ip}) ]]; then
echo ${ip_h}.${ip} is dead!
fi
done
done
}
function check_619() {
echo 'Проверка доступности хостов сети '$ip_h 'из '$(uname -n)
for (( count=1; count < $attempts; count++ )); do
echo '-----------[ step' $count'/'$(($attempts-1))' ]' $(date +%d.%m.%y) $(date +%H:%M) '---------'
for ip in $sc619; do
if ! [[ $(fping -qa ${ip_h}.${ip}) ]]; then
echo ${ip_h}.${ip} is dead!
fi
done
done
}
function usage() {
echo 'Укажите номер VLAN (613 или 619) и кол-во попыток!'
}
if [ $# != 2 ]; then
usage
else
case $1 in
613)
ip_h="10.55.126"
check_613;;
619)
ip_h="172.17.5"
check_619;;
*)
usage;;
esac
fi
💠bulk_tune — групповое выполнение сценариев на удаленных серверах.
Пример запуска: ./bulk_tune В файле playbook_file - сценарий, который должен быть выполнен.
#!/bin/bash
scope=$2
case $scope in
all)
declare -a srvl=(cmp01 cmp02 cmp03 cph01 cph02 cph03 mon01 mon02 ctl01 ctl02 ctl03 s3f01 s3f02 s3f03);;
ceph)
declare -a srvl=(cph01 cph02 cph03);;
s3)
declare -a srvl=(s3f01 s3f02 s3f03);;
ctl)
declare -a srvl=(ctl01 ctl02 ctl03);;
*)
;;
esac
echo ${srvl[@]}
if [ $# != 2 ]; then
echo "payload OR scope not defined!"; exit 0
else
for srv in ${srvl[@]}; do
echo $srv
ssh $srv 'bash -s' < $1;
done
fi
💠psi_go — прогон сценариев ПСИ scmd - номер команды, с которой начинаем выполнение, можно задать, как параметр командной строки. В файл .psi_cmd.lst необходимо добавить все запускаемые команды - по одной на строку.
#!/bin/bash
# psi_go: Прогон сценариев ПСИ
# created during 21.01.2023
# aizaro@mail.ru
if [[ -z $1 ]]; then scmd=0; else scmd=$1; fi
declare -a psicmd
# filling command stack from file
readarray -t psicmd < .psi_cmd.lst
sumop=${#psicmd[@]} ## total operations
#for pp in ${psicmd[*]}; do echo $pp; done
function msg1() {
echo -e '\nВыполняем команду'$1
}
function msg2() {
echo -e 'Результат выполнения команды: \n'
}
function step_mark() {
read -p ':---------------->'
}
for (( step=$scmd; step < $sumop; step++ )); do
msg1
echo '# '$step': '${psicmd[$step]}
step_mark
msg2
#${psicmd[$step]} > /tmp/result_psi ## not worked with for
echo ${psicmd[$step]} > /tmp/psi_cmd && /bin/bash /tmp/psi_cmd
cat /tmp/result_psi
done
🖼️ Дочитать статью
🔨 bash_help8 730
‼️Пополни телефон на 700 за участие в опросах! @mini_opros_bot
1. Пройди быструю и бесплатную регистрацию в боте.
2. Участвуй в простых опросах от крупных компаний.
3. Получай баллы и выводи на телефон от 700₽.
💯Без банковских карт, все честно и прозрачно!Попробуй прямо сейчас – @mini_opros_bot
8 730
⚙️ Shell-secrets
✔️Инструмент, который позволяет безопасно хранить и использовать зашифрованные переменные окружения с помощью GPG. Он подходит для защиты таких данных, как API-ключи, токены, пароли.
➡️ Некоторые особенности скрипта:
💠Зашифрованные файлы. Переменные сохраняются в виде файлов, зашифрованных собственным GPG-ключом.
💠Моментальная загрузка. Переменные загружаются и устанавливаются в текущий shell всего одной командой.
💠Многослойность и изоляция окружений. Скрипт поддерживает многоуровневый вход (nested logins), что позволяет быстро переключаться между разными аккаунтами, проектами и наборами переменных.
#!/bin/sh
login() {
($(gpg -q --decrypt ~/.shell-secrets/$1.gpg) ; SECRET_LOGIN="$SECRET_LOGIN$1 " bash -l)
}
_login() {
SECRETS=$(basename -a -s .gpg ~/.shell-secrets/*.gpg)
COMPREPLY=($(compgen -W "$SECRETS" -- ${COMP_WORDS[COMP_CWORD]}))
return 0
}
complete -F _login login
▶️Скрипт предполагает наличие настроенного GPG, а все переменные после загрузки доступны в окружении текущего shell.
🐙 Подробнее на Github
🔨 bash_help8 730
Ты любишь кофе? Или просто пьёшь его, чтобы выжить утром? 👀 тогда читай дальше…
Ощущаешь кислятину и моральную опустошённость? Хорошие новости: ты попал по адресу.
Сообщество ценителей кофе The Coffee Soldiers расскажет тебе:
☕️ Как полюбить кофе без сахара?
🤝🏻 Проверенные советы, чтобы не тупить у полки с кофе.
🥸 Короткие истории от тех, кто уже в теме (и больше не пьёт «3в1 от боли»).
🌟 Запуски новых вкусов, наборов и спецпредложений — без маркетингового инфаркта.
🎉 Вебинары, чеклисты, гайды — всё, чтобы ты стал главным кофейным среди своих.
📲 Подписывайся, включайся, заливай — и будь с нами.
Добро пожаловать в армию кофеиново просветлённых.
Реклама: ООО «ТКС МСК»
ИНН: 7708440604
ERID: 2VtwevqwnCT
8 730
⚙️ Шпаргалка по Bash-скриптам для повседневной работы
✔️Bash (Bourne Again SHell) — это командный интерпретатор в Unix-подобных операционных системах, таких как Linux и macOS. Он предоставляет удобный способ взаимодействия с операционной системой через командную строку. Создание Bash-скриптов является мощным инструментом для автоматизации повседневных задач и улучшения процесса работы с системой. В этой статье мы рассмотрим основы написания Bash-скриптов для повседневной работы.
➡️ Содержание:
💠Основы синтаксиса Bash
💠Аргументы командной строки
💠Условные операторы
💠Циклы
💠Функции
💠Работа с файлами и каталогами
💠Ошибки и отладка
💠Переменные окружения
💠Чтение пользовательского ввода
💠Массивы
💠Проверка наличия команд
💠Работа с условиями в строках
💠Параллельное выполнение команд
💠Пример скрипта на Bash
🖼️ Ссылка на шпаргалку
🔨 bash_help
8 730
▶️ БЕСПЛАТНЫЙ МАСТЕР-КЛАСС «Linux: от основ к профессиональному использованию»
14 мая в 19:00 (МСК) | Онлайн | Бесплатно
✔️Регистрация
Linux уже давно перестал быть инструментом исключительно для системных администраторов. Сегодня это необходимый навык для DevOps-инженеров, специалистов по кибербезопасности и всех, кто работает с IT-инфраструктурой.
На нашем вебинаре мы:
▪️ Развеем мифы о сложности Linux и покажем, как начать работать с ним уверенно
▪️ Продемонстрируем практическое применение в реальных рабочих задачах
▪️ Расскажем о карьерных перспективах для специалистов, владеющих Linux
▪️ Дадим пошаговый алгоритм освоения системы
Особое внимание уделим:
✔ Работе с терминалом (основные команды и их применение)
✔ Решению типовых задач системного администрирования
✔ Возможностям для профессионального роста
Ведущий: Дмитрий Семьянов — действующий специалист по пентесту, куратор курса «Основы Linux».
Не пропустите! Регистрация здесь.
🚀 Трудности с регистрацией? Пишите @Codeby_Academy
8 730
⚙️ Упрощение работы с crontab на удаленных серверах
✔️В сфере системного администрирования Linux есть множество задач, которые мы выполняем регулярно. Одна из таких задач — работа с
crontab на удаленных серверах. Казалось бы, процесс прост: подключиться к серверу, открыть crontab, внести изменения. Но что, если я скажу вам, что этот процесс можно значительно упростить и ускорить? Обычно этот процесс требует нескольких шагов, но я нашел способ сделать его гораздо проще и быстрее.
▶️Стандартный подход, который многие используют (хотя это и не самый лучший способ), заключается в том, чтобы сначала войти на удаленный сервер под root, а затем выполнить команду crontab -e. Но что, если я скажу вам, что есть способ сделать это одной командой?
▶️Вот эта однострочная команда творит чудеса:
ssh -t root@x.x.x.x 'crontab -e'
▶️Здесь параметр -t выделяет терминал, необходимый для работы с vim, который используется для редактирования crontab. Но можно пойти еще дальше и создать функцию, которая сделает процесс еще удобнее.
▶️Откройте файл .bashrc или .zshrc (в зависимости от используемой оболочки) и добавьте в конец следующую функцию:
rcron() {
if [ $# -eq 0 ] || [ $# -gt 2 ]; then
echo "Usage: rcront [username] "
return 1
fi
local username="root"
local ip
if [ $# -eq 1 ]; then
ip="$1"
else
username="$1"
ip="$2"
fi
ssh -t "${username}@${ip}" 'crontab -e'
}
▶️После этого не забудьте перезагрузить файл конфигурации:
➡️ Для bash:
source ~/.bashrc
➡️ Для zsh (обычно на Mac):
source ~/.zshrc
▶️Теперь использовать эту функцию очень просто. Например, чтобы отредактировать crontab пользователя root на сервере server01, достаточно ввести:
rcron server01▶️А если нужно отредактировать crontab пользователя user1 на том же сервере:
rcron user1 server01➡️ Использование таких однострочных команд и функций может значительно упростить вашу ежедневную работу. Освоив их, вы не только сэкономите время, но и произведете впечатление на коллег-линуксоидов. А уж как удивятся администраторы Windows, когда увидят, насколько легче управлять серверами Linux! 🖼️ Ссылка на источник 🔨 bash_help
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
