| - он позволяет отправлять вывод одной команды в другую. К примеру, команда ls выводит список файлов в директории и команда grep возвращает результаты поиска по заданным параметром. С помощью пайпа эти две команды можно скомбинировать - например если вам нужно найти в директории конкретный файл (в данном случае - некую аудиозапись, которая начинается как recording010101:ls | grep recording010101
* - звездочка. К примеру, если нужно удалить все файлы, которые начинаются на слово recording01, то можно ввести следующую команду:rm recording01*
Это может быть очень полезным при написании скриптов, которые удаляют по крону старые логи или файлы аудио-записей. Но с данной командой нужно быть очень аккуратным - если забыть проставить критерии поиска, то команда вида
rm * удалит всё содержимое директории.>. Сценариев использования масса, как пример приведу вывод команды ls в текстовый файл (ниже) - если у вас в директории очень большое количество файлов, то, для общего понимания что же именно в ней находится будет проще работать с текстовым файлом или же можно запустить рекурсивный скрипт с занесением содержимого всех каталогов в текстовые, например:ls > testfile.txt
~. Просто введите cd ~ и вы попадете в директорию /home/user.& .Если хотите запустить, к примеру, Wireshark в бэкграунде, необходимо написать
wireshark & - по умолчанию Bash запускает каждую программу в текущем терминале. Поэтому это может очень пригодиться, если вам нужно выполнять какую-то программу и все ещё пользоваться тем же терминалом. А если нужно запустить Wireshark через какое-то время, то можно воспользоваться командой && - к примеру, sleep 360 && wireshark - это запустит wireshark через 6 минут. Сама команда sleep не делает ничего, это, грубо говоря, просто условный таймер.Please open Telegram to view this post
VIEW IN TELEGRAM
👍12😐5✍4🔥3
«…У меня всё работает локально» — и вот ты уже второй час копаешься в логах Jenkins, а выкатка задерживается…😬
Команды, которые автоматизируют CI/CD, не зависят от ручных сборок и человеческого фактора. Их инженеры спят спокойно и при этом ценятся выше — потому что стабильный пайплайн экономит часы работы всей команды.
👉🏻21 июля стартует курс «CI/CD с Jenkins», на котором вы поймёте, как автоматизировать процесс интеграции и поставки, сократить количество багов и ускорить релизы.
Вы научитесь:
🔵 настраивать Jenkins с нуля — от плагинов до облачных агентов;
🔵 писать надёжные пайплайны и понимать, почему они сломались;
🔵 деплоить в Kubernetes — чтобы ваш код летел в прод, а не в ошибки.
Пройдете путь от настройки первого плагина и создания простого пайплайна до Jenkins as code и внедрения в Kubernetes. Без лишней теории, только то, что используют в топовых командах.
❗️По промокоду LETO2025 на курс действует скидка 50%
Успейте забрать обучение с выгодой и вывести свои навыки автоматизации на уровень, за который платят больше.
➡️ Занять место со скидкой
Команды, которые автоматизируют CI/CD, не зависят от ручных сборок и человеческого фактора. Их инженеры спят спокойно и при этом ценятся выше — потому что стабильный пайплайн экономит часы работы всей команды.
👉🏻21 июля стартует курс «CI/CD с Jenkins», на котором вы поймёте, как автоматизировать процесс интеграции и поставки, сократить количество багов и ускорить релизы.
Вы научитесь:
🔵 настраивать Jenkins с нуля — от плагинов до облачных агентов;
🔵 писать надёжные пайплайны и понимать, почему они сломались;
🔵 деплоить в Kubernetes — чтобы ваш код летел в прод, а не в ошибки.
Пройдете путь от настройки первого плагина и создания простого пайплайна до Jenkins as code и внедрения в Kubernetes. Без лишней теории, только то, что используют в топовых командах.
❗️По промокоду LETO2025 на курс действует скидка 50%
Успейте забрать обучение с выгодой и вывести свои навыки автоматизации на уровень, за который платят больше.
➡️ Занять место со скидкой
✍2
$(), {}, [], $(( )), ${}, () и [[ ]].Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥8✍6
Forwarded from 1337
Победителей будет много, а для участия нужны лишь пара кликов:
1. Подписаться на Рифмы и Панчи, 1337 и на Техно.
2. Нажать «Участвовать» под этим постом
Что по призам:
1 место - Iphone 16 Pro
2 место - PS5 Slim
3 место - Nintendo Switch 2
4-10 места - 10 000 рублей на карту
Победителей определим 21 июля в 18:00 МСК. Всем удачи!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5✍4🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
✍9👍4🔥3
--write результат можно записать в файл.Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥5✍3
erid: 2W5zFGjfLwi
RYBE — одежда с твоим языком программирования.
Где два айтишника могут познакомиться?
В офисе и на конференции. Нам этого мало. Мы захотели объединить людей, у которых одни интересы. Дать возможность узнать друг друга. В метро, на прогулке, в офисе, на конференции, в походе, в баре, в самолёте.
В каком-то смысле это мерч для твоего языка программирования.
А что еще?
- отшиваемся в Москве;
- плотный премиум-хлопок;
- фичи типа люверсов для крепления пропуска, кармана для наушников и салфетки для очков
Выбирай свой язык, заказывай, дари, носи сам: https://rybe.store/
Наш tg: @rybe_store
RYBE — одежда с твоим языком программирования.
Где два айтишника могут познакомиться?
В офисе и на конференции. Нам этого мало. Мы захотели объединить людей, у которых одни интересы. Дать возможность узнать друг друга. В метро, на прогулке, в офисе, на конференции, в походе, в баре, в самолёте.
В каком-то смысле это мерч для твоего языка программирования.
А что еще?
- отшиваемся в Москве;
- плотный премиум-хлопок;
- фичи типа люверсов для крепления пропуска, кармана для наушников и салфетки для очков
Выбирай свой язык, заказывай, дари, носи сам: https://rybe.store/
Наш tg: @rybe_store
🔥5😐4👍3✍1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4✍1
Forwarded from localhost
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉27🔥11👍5
2025 год: ИИ, облака и… дыры в Kubernetes?
Тренды меняют индустрию: компании переходят в облака, внедряют ИИ, автоматизируют всё. Но чем сложнее инфраструктура, тем проще оставить брешь в безопасности.
Особенно в Kubernetes:
◼️ незакрытый дашборд — и вот уже криптомайнеры используют ваш кластер;
◼️ под с root-доступом — и злоумышленник получает контроль над нодой;
◼️ логи с паролями доступны бывшим сотрудникам — и вот уже вы находите их в сливах.
Даже если работаете с k8s давно, не факт, что вы знаете все нюансы безопасности в Kubernetes! Что делать? Прокачивать security.
👉 4 августа стартует практический курс «Безопасность в Kubernetes», на котором вы на реальных кейсах научитесь обеспечивать безопасность контейнера, а с ним и проекта, и максимально усложнять жизнь злоумышленникам.
🔥 Можно забрать со скидкой 50% по промокоду LETO2025!
Узнать подробности и занять место на курсе — по ссылке.
Тренды меняют индустрию: компании переходят в облака, внедряют ИИ, автоматизируют всё. Но чем сложнее инфраструктура, тем проще оставить брешь в безопасности.
Особенно в Kubernetes:
◼️ незакрытый дашборд — и вот уже криптомайнеры используют ваш кластер;
◼️ под с root-доступом — и злоумышленник получает контроль над нодой;
◼️ логи с паролями доступны бывшим сотрудникам — и вот уже вы находите их в сливах.
Даже если работаете с k8s давно, не факт, что вы знаете все нюансы безопасности в Kubernetes! Что делать? Прокачивать security.
👉 4 августа стартует практический курс «Безопасность в Kubernetes», на котором вы на реальных кейсах научитесь обеспечивать безопасность контейнера, а с ним и проекта, и максимально усложнять жизнь злоумышленникам.
🔥 Можно забрать со скидкой 50% по промокоду LETO2025!
Узнать подробности и занять место на курсе — по ссылке.
✍2
генерация отчёта на основе данных сканирования и после использования;
использование таких инструментов для тестирования безопасности, как Nmap, Metasploit, John.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4✍2
Forwarded from Cyber Media
За три года российские ИБ-вендоры смогли нарастить производство и успешно заменить ушедших западных разработчиков.
Теперь перед ними стоит новый вызов — выход на зарубежные рынки, в первую очередь стран Азии и Ближнего Востока.
Please open Telegram to view this post
VIEW IN TELEGRAM
😐13👍4
#!/bin/bash
cd /home/user/working-directory
# loop menu
while true; do
# Display options
echo "BACKUP TOOL"
echo "................."
echo "1 Backup 1"
echo "2 Backup 2"
echo "3 Backup 3"
echo "................."
# Read user input
read -n 1 -p "Enter your choice (#) or exit (x): " choice
echo
# Perform the selected action based on user input
case "$choice" in
1)
echo "Backup 1"
./script_1 ;;
2)
echo "Backup 2"
./script_2 ;;
3)
echo "Backup 3"
./script_3 ;;
x)
exit 0 ;;
*)
echo "Invalid choice..." ;;
esac
done
#!/bin/bash
# WD
cd /home/user/git-directory
# copy file to backup
cp /home/user/other-directory/file.ext ./file.ext
# encrypt file using GPG AES256
gpg -c file.kdbx
# rename with date
now=$(date +%Y%m%d_%H%M)
mv file.kdbx.gpg ./"keep_$now.gpg"
read -p ">> Continue to GIT ? " -n1 -s
# Remove temp files
rm ./file.ext
# GIT operations
git pull
git add *.gpg
git commit -a -m "File backup"
git push
gpg -d --output restored_file.ext ./*gpg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥4✍2
Forwarded from BashTex | Linux
Ротационные бэкапы с экономией места: rsync + hardlink
На сервере делаются ежедневные резервные копии, но не хочется тратить кучу места на дублирование одних и тех же файлов?
Есть отличный способ - использовать
🌟 Суть подхода
Бэкапы выглядят как отдельные директории (backup-2025-06-02, backup-2025-06-01), но все неизмененные файлы - это просто ссылки на одни и те же иноды.
Если файл не изменился - он физически не дублируется, а просто переиспользуется в новом бэкапе.
▪️ Структура и логика
Пример каталогов:
daily.0 - свежий бэкап.
daily.1, daily.2, ... - предыдущие снепшоты.
При каждом новом запуске:
старые бэкапы смещаются на +1 (daily.2 → daily.3)
daily.0 создаётся как --link-dest от daily.1
▪️ Скрипт ротационного бэкапа
⭐️ Преимущества
BashTex📱 #bash #utils
На сервере делаются ежедневные резервные копии, но не хочется тратить кучу места на дублирование одних и тех же файлов?
Есть отличный способ - использовать
rsync с жёсткими ссылками (hardlinks) для дедупликации. Это позволяет хранить полные снепшоты, при этом экономя место.Бэкапы выглядят как отдельные директории (backup-2025-06-02, backup-2025-06-01), но все неизмененные файлы - это просто ссылки на одни и те же иноды.
Если файл не изменился - он физически не дублируется, а просто переиспользуется в новом бэкапе.
Пример каталогов:
/backups/
├── daily.0 ← сегодня
├── daily.1 ← вчера
├── daily.2
└── daily.3
daily.0 - свежий бэкап.
daily.1, daily.2, ... - предыдущие снепшоты.
При каждом новом запуске:
старые бэкапы смещаются на +1 (daily.2 → daily.3)
daily.0 создаётся как --link-dest от daily.1
#!/bin/bash
SRC="/home/user"
DEST="/backups"
MAX=7 # сколько дней хранить
# Сдвигаем старые бэкапы
for ((i=MAX-1; i>=0; i--)); do
if [ -d "$DEST/daily.$i" ]; then
mv "$DEST/daily.$i" "$DEST/daily.$((i+1))"
fi
done
# Создаём новый бэкап с дедупликацией
LINK=""
if [ -d "$DEST/daily.1" ]; then
LINK="--link-dest=$DEST/daily.1"
fi
rsync -aAX --delete $LINK "$SRC/" "$DEST/daily.0"
- Каждый бэкап - полный, можно восстановить всё в конкретном состоянии.
- Экономия места - используется только дополнительное место для новых/изменённых файлов.
- Простота восстановления: rsync обратно или просто cp.
BashTex
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥6✍4