BashMaster
前往频道在 Telegram
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help
显示更多8 734
订阅者
+124 小时
+47 天
+13430 天
帖子存档
8 734
🫥 Станьте Риком Санчезом в мире интернета
Сообщество Rick Academy запустило свой канал по хакингу, в котором можно найти сотни видеоуроков, статей, книг и курсов, которых нет в открытом доступе из соображений безопасности.
С этим контентом вы освоите:
✔️ Linux и все его возможности
✔️ Программирование
✔️ Кибербезопасность
✔️ Знания в области пентеста
✔️ Анонимность
✔️ Социальную инженерию
✔️ Работу вирусов, софтов и троянов
Откройте новые возможности интернета, получите доступ к невероятным ресурсам.
🪞Начать приключения: @RickAcademy
8 734
Переменные среды
Иногда в командах оболочки нужно работать с некими системными данными. Вот, например, как вывести домашнюю директорию текущего пользователя
Обратите внимание на то, что мы можем использовать системную переменную $HOME в двойных кавычках, это не помешает системе её распознать.
#!/bin/bash
# display user home
echo "Home for the current user is: $HOME"8 734
nohup для создания "бессмертных" процессов
nohup - это команда для создания долгоживущих процессов без зависимости от терминала. Когда вы запускаете программу из командной строки, она обычно завершается при закрытии терминала. Однако, если вы добавите символ
& и используете команду nohup, программа будет продолжать работу даже после закрытия терминала.
Это полезно, например, для запуска долгих задач или серверов, которые должны работать в фоновом режиме.
nohup firefox https://freecodecamp.org &8 734
Джуниоров не берут на работу!
Это потому что у них нет коммерческого опыта. Но где его взять, если не берут на работу без опыта?
Чтобы наработать опыт надо делать пет-проекты — это сайты, приложения и сервисы, которые похожи на коммерческие и показывают весь опыт джуна на практике.
Обычно новички не могут придумать такие проекты самостоятельно.
Поэтому один добрый тимлид выкладывает такие пет-проекты к себе в телеграм-канал, чтобы помочь новичкам, стартующим в профессии.
Подпишитесь, пока этот канал открыт
8 734
Отправка сообщений в терминал пользователя
Команда отправки сообщений,
write, довольно проста. Для того, чтобы ей воспользоваться, достаточно знать имя пользователя и имя его терминала. Однако, для успешной отправки сообщения, помимо актуальных данных о пользователе и терминале, надо знать, вошёл ли пользователь в систему, не запретил ли он запись в свой терминал. В результате, перед отправкой сообщения нужно выполнить несколько проверок.
Займёмся решением данной задачи, напишем bash-скрипт:
https://telegra.ph/Otpravka-soobshchenij-v-terminal-polzovatelya-05-318 734
Шпаргалка по Bash для начинающих
Часто забываете команды bash или другие возможности оболочки? Мы нашли для вас полезную статью-шпаргалку.
В ней вы найдёте шпаргалки на такие темы: введение в оболочку, навигация, основные команды, переменные окружения, коннекторы, конвейеры, перенаправление ввода/вывода, права доступа и комбинации клавиш.
Забыли, открыли, вспомнили и продолжили работу 👌
8 734
Вы знали, что каждый админ на Linux должен знать компьютерные сети на хорошем уровне?
🤔 Если вы хотите по-быстрому разобраться в сетях и при этом не читать книги по тысячи страниц, то ждём вас на канале Network Academy, где вы сможете быстро изучить основы компьютерных сетей за несколько минут.
ЗАХОДИТЕ 👉 Network Academy
8 734
Парсниг JSON в консоли
Если вам требуется просто спарсить единственное поле объекта JSON, полученного например из API-эндпоинта, тогда вы можете обойтись
sed.
Если же нужно, предположим, выбрать определенный ключ массива вложенного в глубину объекта, используйте утилиту jq (документация). Как минимум, jq выведет ваш JSON отформатированно и в цвете.8 734
Калькулятор в консоли
Вы можете вычислять математические выражения в bash, если заключите их в комбинацию
$(( )). Значение можно сразу вывести, записать в переменную или использовать еще как угодно.
echo $((2 * (30 - 19) / 5)) MATH=$((2**8 + 1))
8 734
Ты знал что каждый линуксоид должен знать сети на хорошем уровне?
Если ты хочешь по-быстрому разобраться в сетях и не хочешь читать книги по тысячи страниц, то переходи в канал @school_network где ты быстро сможешь изучить самое важное за несколько минут.
👉 @school_network
8 734
Как увидеть команды, которые выполняются внутри bash скрипта
Иногда хочется понять, правильно ли вы написали скрипт, или отлаживаете CI/CD джобу. Но как увидеть, какие именно команды выполняются, какие переменные передаются и так далее?
В этом вам точно поможет встроенная функция
set -x. Все команды, которые будут идти после выполнения set -x будут отображены в консоли.
Эту функцию можно вызывать как в самом начале скрипта, так и окружить ей необходимый участок: set -x / set +x8 734
TAB для автодополнения
Если во время ввода названия файла или папки в команде вы нажмете
TAB, то консоль допишет искомое название.
Но TAB также умеет дополнять любые аргументы: подкоманды, названия веток, контейнеров, ssh хостов и так далее. Поэкспериментируйте сами.
Вообще autocomplete для различных команд можно устанавливать, поэтому если TAB для вашего приложения не сработал – попробуйте поискать нужный пакет автодополнений для этой программы.8 734
TAB для автодоплнения
Если во время ввода названия файла или каталога в команде вы нажмете `
8 734
Как сохранить вывод команды в файл
Вывод любой консольной команды можно перенаправить в файл. Для этого используйте модификаторы
>> чтобы добавить результат в конец файла и >, чтобы перезаписать файл.
sort data.txt > sorted.txt cat nginx/access.log | grep 127.0.0.1 >> filtered_by_ip.log
8 734
Сортировка в консоли
Интуитивным перебором можно найти команду консоли почти на любой случай жизни.
Отсортировать файл можно конечно же командой sort. С флагом -r сортировка произойдет в обратном порядке.
Кстати можно сортировать еще и вывод через конвеер |.
sort data.txt
./app fetch-names | sort
8 734
Сортировка в консоли
Интуитивным перебором можно найти команду консоли почти на любой случай жизни.
Отсортировать файл можно конечно же командой
sort. С флагом -r сортировка произойдет в обратном порядке.
Кстати можно сортировать еще и вывод через конвеер |.
sort data.txt ./app fetch-names | sort
8 734
test для быстрой проверки условий
Когда неохота писать условную команду
if для выполнения короткого действия воспользуйтесь test с условными связками && и ||.
Например, создать файл, если его еще нет:
test -f ./etc/nginx.conf || touch ./etc/nginx.confЕсли вы используете проверку
И, то не забудьте в конце дописать || true, иначе test оборвет ваш скрипт с провалом:
test "$RESULT" && echo "Success" || true
8 734
Ты знал что каждый линуксоид должен знать сети на хорошем уровне?
Если ты хочешь по-быстрому разобраться в сетях и не хочешь читать книги по тысячи страниц, то переходи в канал @school_network где ты быстро сможешь изучить самое важное за несколько минут.
👉 @school_network
8 734
Фигурные скобки в аргументах
С помощью фигурных скобок можно быстро размножить аргументы по шаблону. Например создать несколько файлов, изменить расширение, вывести последовательность:
echo {a..z}
touch {01,02,05..10}_data.txt
mv .env{.example,}
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
