Мониторинга логов в реальном времени
Иногда нужно следить за логами, но обычный
📌 Можно изменить путь к файлу лога (
Очень удобно, когда нужно быстро отследить проблемные записи в логах.
👉@bash_srv
Иногда нужно следить за логами, но обычный
tail -f
не всегда удобен. Ниже накидал скрипт, который подсвечивает ошибки и предупреждения разными цветами:
#!/bin/bash
# автор: https://t.iss.one/bash_srv
LOGFILE="/var/log/syslog"
tail -Fn0 "$LOGFILE" | \
while read line; do
if echo "$line" | grep -q "ERROR"; then
echo -e "\e[31m$line\e[0m" # красный для ошибок
elif echo "$line" | grep -q "WARN"; then
echo -e "\e[33m$line\e[0m" # жёлтый для предупреждений
else
echo "$line"
fi
done
📌 Можно изменить путь к файлу лога (
LOGFILE
) и ключевые слова (ERROR
, WARN
) под свои нужды.Очень удобно, когда нужно быстро отследить проблемные записи в логах.
👉@bash_srv
👍10
Скрипт, который находит в логах все уникальные IP-адреса и подсчитывает, сколько раз каждый встречался.
🔍 Что делает скрипт:
-
-
-
-
-
💡Будет полезн для быстрого анализа DDoS или частых запросов от конкретных клиентов.
👉@bash_srv
#!/bin/bash
# Подсчёт уникальных IP-адресов в логах
# автор: https://t.iss.one/bash_srv
LOGFILE="/var/log/nginx/access.log"
awk '{print $1}' "$LOGFILE" | sort | uniq -c | sort -nr | head -20
🔍 Что делает скрипт:
-
awk '{print $1}'
— вытаскивает первый столбец (обычно IP).-
sort
— сортирует все IP.-
uniq -c
— считает количество повторений.-
sort -nr
— сортировка по числу в обратном порядке.-
head -20
— показывает топ-20 самых активных IP.💡Будет полезн для быстрого анализа DDoS или частых запросов от конкретных клиентов.
👉@bash_srv
👍8❤2
Как быстро проверить, какие процессы занимают больше всего памяти или CPU?
Вместо длинных
🔍 Что делает скрипт:
📌 Если хотите отсортировать по CPU - замените
Удобно для быстрой диагностики «прожорливых» процессов без лишних инструментов! ⚡
👉@bash_srv
Вместо длинных
top
или htop
, можно использовать скрипт ниже.
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head -n 15
🔍 Что делает скрипт:
ps -eo ...
- выводит список процессов с PID, PPID, командой, % памяти и CPU.--sort=-%mem
- сортировка по памяти (от большего к меньшему).head -n 15
- показываем только топ-15 процессов.📌 Если хотите отсортировать по CPU - замените
%mem
на %cpu
:
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -n 15
Удобно для быстрой диагностики «прожорливых» процессов без лишних инструментов! ⚡
👉@bash_srv
👍8❤1
Чтобы быстро проверить соединение с набором хостов, можно использовать след. скрипт
🔧 Можно добавить свои сервера в список и за пару секунд проверить доступность.
👉@bash_srv
#!/bin/bash
for host in server1.example.com server2.example.com 8.8.8.8; do
if ping -c1 -W1 "$host" &>/dev/null; then
echo "✅ $host доступен"
else
echo "❌ $host недоступен"
fi
done
🔧 Можно добавить свои сервера в список и за пару секунд проверить доступность.
👉@bash_srv
👍9
Если вам часто приходится искать файлы по содержимому, то для этого есть мощная связка
Например, чтобы найти все файлы с текстом "ERROR" в
📌 А если хотите искать рекурсивно по каталогу проще, используйте
✨ Добавим подсветку совпадений:
Теперь нужные строки будут выделяться цветом
👉@bash_srv
grep + find
🔍Например, чтобы найти все файлы с текстом "ERROR" в
/var/log
:
find /var/log -type f -exec grep -H "ERROR" {} \;
📌 А если хотите искать рекурсивно по каталогу проще, используйте
grep -r
:
grep -r "ERROR" /var/log
✨ Добавим подсветку совпадений:
grep --color=always -r "ERROR" /var/log
Теперь нужные строки будут выделяться цветом
👉@bash_srv
👍4👌2
Как быстро найти и удалить пустые директории
Иногда в системах с большим количеством файлов и директорий накапливаются пустые папки. Вот простой способ найти и удалить их одним махом:
🔍 Разбор:
-
-
-
-
🛡 Важно:
Перед удалением рекомендую посмотреть, что именно будет удалено:
👉@bash_srv
Иногда в системах с большим количеством файлов и директорий накапливаются пустые папки. Вот простой способ найти и удалить их одним махом:
find /path/to/search -type d -empty -delete
🔍 Разбор:
-
/path/to/search
— укажи директорию, где искать.-
-type d
— ищем только директории.-
-empty
— фильтруем только пустые.-
-delete
— удаляем найденные.🛡 Важно:
Перед удалением рекомендую посмотреть, что именно будет удалено:
find /path/to/search -type d -empty
👉@bash_srv
👍6
Облако ITENTIS CLOUD: технологии топов, цена без наценки (и живая поддержка!)
Нашли брендовую вещь в надежном маркете на 30% дешевле? Вот и мы так же. 😉
ITENTIS CLOUD — не "бюджетный" вариант. Это ВСЕ те же технологии, что у Яндекса, Mail или VK (VPC, Kubernetes, S3, снимки, автомасштабирование), но...
🔥 ...ЗНАЧИТЕЛЬНО ДЕШЕВЛЕ! 🔥
Зачем платить за бренд? Получите то же самое (а кое-что лучше) и сэкономьте. Не верите? Сравните тарифы! Надежные дата-центры Tier III, как у всех.
И главное — наша поддержка. Вот где мы их РЕАЛЬНО обходим:
💩 У них: очереди, боты, ответ "в течение 24 часов".
😍 У нас: живой, компетентный специалист 24/7. Не бот! Настоящий человек, который РАЗБЕРЕТСЯ. Ответ за минуты. Сложный Kubernetes? Объясним и поможем. Это наш стандарт.
Что вы получаете за меньшие деньги:
1. Та же "начинка": все ключевые технологии (VPC, Kubernetes, S3 и т.д.) — как у топов.
2. Надежность: Tier III, 2FA, шифрование, брандмауэры.
3. Скорость: запуск кластера быстрее доставки пиццы.
4. Простой контроль: интуитивное управление.
5. ГЛАВНОЕ: цена, от которой улыбнетесь + поддержка, которая реально спасает.
"А подвох?" Да нигде!
▶️14 дней БЕСПЛАТНО: протестируйте всё.
▶️БЕСПЛАТНАЯ миграция: перенесем ваши проекты без простоев.
▶️Гарантия возврата: риск — ноль.
‼️ Понравится? Расскажите друзьям! Реферальная программа: за каждого клиента — бонус или скидка. Без мишуры.
Итог: ITENTIS CLOUD = Технологии топов + Честная цена + Человеческая поддержка 24/7.
Хватит переплачивать и ждать ответа! Получите максимум.
👉 Действуйте выгодно:
1. Сравните тарифы: https://itentis.cloud
2. Пишите:
🤖 Telegram-бот: @itentis_bot (Фраза: "Хочу облако дешевле Яндекса!")
✉️ Почта: [email protected]
3. Скажите: "Читал пост про ЭКОНОМИЮ в облаке!" 🚀(Получите бонус!)
4. Присоединяйтесь: https://t.iss.one/+D0MuFDf8P1FlMTJi
https://itentis.ru Мощное облако. Честная цена. Люди на связи.
Реклама. ООО "АВАНГАРД", ОГРН 1107746046550, erid: 2VtzqxcZdhf
Нашли брендовую вещь в надежном маркете на 30% дешевле? Вот и мы так же. 😉
ITENTIS CLOUD — не "бюджетный" вариант. Это ВСЕ те же технологии, что у Яндекса, Mail или VK (VPC, Kubernetes, S3, снимки, автомасштабирование), но...
🔥 ...ЗНАЧИТЕЛЬНО ДЕШЕВЛЕ! 🔥
Зачем платить за бренд? Получите то же самое (а кое-что лучше) и сэкономьте. Не верите? Сравните тарифы! Надежные дата-центры Tier III, как у всех.
И главное — наша поддержка. Вот где мы их РЕАЛЬНО обходим:
💩 У них: очереди, боты, ответ "в течение 24 часов".
😍 У нас: живой, компетентный специалист 24/7. Не бот! Настоящий человек, который РАЗБЕРЕТСЯ. Ответ за минуты. Сложный Kubernetes? Объясним и поможем. Это наш стандарт.
Что вы получаете за меньшие деньги:
1. Та же "начинка": все ключевые технологии (VPC, Kubernetes, S3 и т.д.) — как у топов.
2. Надежность: Tier III, 2FA, шифрование, брандмауэры.
3. Скорость: запуск кластера быстрее доставки пиццы.
4. Простой контроль: интуитивное управление.
5. ГЛАВНОЕ: цена, от которой улыбнетесь + поддержка, которая реально спасает.
"А подвох?" Да нигде!
▶️14 дней БЕСПЛАТНО: протестируйте всё.
▶️БЕСПЛАТНАЯ миграция: перенесем ваши проекты без простоев.
▶️Гарантия возврата: риск — ноль.
‼️ Понравится? Расскажите друзьям! Реферальная программа: за каждого клиента — бонус или скидка. Без мишуры.
Итог: ITENTIS CLOUD = Технологии топов + Честная цена + Человеческая поддержка 24/7.
Хватит переплачивать и ждать ответа! Получите максимум.
👉 Действуйте выгодно:
1. Сравните тарифы: https://itentis.cloud
2. Пишите:
🤖 Telegram-бот: @itentis_bot (Фраза: "Хочу облако дешевле Яндекса!")
✉️ Почта: [email protected]
3. Скажите: "Читал пост про ЭКОНОМИЮ в облаке!" 🚀(Получите бонус!)
4. Присоединяйтесь: https://t.iss.one/+D0MuFDf8P1FlMTJi
https://itentis.ru Мощное облако. Честная цена. Люди на связи.
Реклама. ООО "АВАНГАРД", ОГРН 1107746046550, erid: 2VtzqxcZdhf
👍1
📁Как отрезать расширение у файла в Bash
📌 Что тут происходит:
-
👀 Примеры:
Если хочешь убрать все расширения (в т.ч.
🧠 Под капотом:
-
-
Мощно и без внешних команд! 🚀
👉@bash_srv
filename="example.txt"
name="${filename%.*}"
echo "$name"
📌 Что тут происходит:
-
${filename%.*}
— удаляет последнюю точку и всё после неё, то есть расширение.👀 Примеры:
filename="backup.tar.gz"
name="${filename%.*}" # Результат: backup.tar
Если хочешь убрать все расширения (в т.ч.
.tar.gz
), можно использовать вот так:
filename="backup.tar.gz"
name="${filename%%.*}" # Результат: backup
🧠 Под капотом:
-
%.*
— удаляет самую правую точку и всё после.-
%%.*
— удаляет самую левую точку и всё после.Мощно и без внешних команд! 🚀
👉@bash_srv
👍7
🛡 Проверка SSL-сертификатов с помощью Bash
Иногда нужно быстро проверить срок действия SSL-сертификата удалённого сайта. Вот удобный однострочник на Bash, который покажет дату окончания действия сертификата:
📆 Чтобы получить только оставшиеся дни до окончания:
🔒 Полезно для автоматического мониторинга или проверки перед продлением сертификатов!
👉@bash_srv
Иногда нужно быстро проверить срок действия SSL-сертификата удалённого сайта. Вот удобный однострочник на Bash, который покажет дату окончания действия сертификата:
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
| openssl x509 -noout -dates | grep notAfter
📆 Чтобы получить только оставшиеся дни до окончания:
end_date=$(echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
| openssl x509 -noout -enddate | cut -d= -f2)
end_ts=$(date -d "$end_date" +%s)
now_ts=$(date +%s)
echo "Осталось дней: $(( (end_ts - now_ts) / 86400 ))"
🔒 Полезно для автоматического мониторинга или проверки перед продлением сертификатов!
👉@bash_srv
👍8
🚀 Утилита
Когда ты запускаешь какую-то команду, и она может зависнуть - это беда. Особенно в скриптах. На помощь приходит утилита
Пример использования:
Эта команда завершит
Можно задать время в секундах (
Что произойдёт при превышении тайм-аута?
По умолчанию
Изменение сигнала:
Проверка кода возврата:
👉@bash_srv
timeout
: автоматическое завершение зависших команд Когда ты запускаешь какую-то команду, и она может зависнуть - это беда. Особенно в скриптах. На помощь приходит утилита
timeout
из пакета coreutils
.Пример использования:
timeout 30s ./backup.sh
Эта команда завершит
./backup.sh
, если она не завершится за 30 секунд.Можно задать время в секундах (
s
), минутах (m
), часах (h
) и даже днях (d
).Что произойдёт при превышении тайм-аута?
По умолчанию
timeout
отправляет сигнал SIGTERM
, а через 5 секунд - SIGKILL
, если процесс всё ещё жив.Изменение сигнала:
timeout -s SIGINT 10s ./script.sh
Проверка кода возврата:
if timeout 5s ./some_command; then
echo "Успешно"
else
echo "Команда завершена по таймауту или с ошибкой"
fi
👉@bash_srv
👍6