Скрипты с пылу с жару, написанные на коленке

K

kenny

Гость
#1
Решил начать темку :)
Вот мои 5 копеек
Код:
#!/bin/bash
MAX_LOAD=20.0
ADMIN="admins@example.com"
LOAD=`awk '{print $2}' /proc/loadavg`
if [ $LOAD \> $MAX_LOAD ]; then
cat <<EOF >/tmp/hl.html
To: $ADMIN
Subject: High load alert
Content-Type: text/html; charset="koi8-r"
<html>
<body>
<h1>Host:Allert!  $(hostname) , date $(date)</h1>
<h2>High load  $(hostname)</h2>
<p><font size="2" color="black" face="Arial"> Винмание возрасла нагрузка на $(hostname)</font>
<p><font size="2" color="black" face="Arial"> Загрузка системы составляет $LOAD</font></p>
<p><font size="7" color="red" face="Arial"> Срочно принять меры</font></p>
</body>
</html>
EOF
sendmail $ADMIN < /tmp/hl.html
else
echo "all goooooooooood"
fi
Собственно скрипт снимает статистику за 5 минут по нагрузки сервера, если нагрузка больше 20.0, то отсылает на указанную почту письмо.
Переменные
MAX_LOAD - задаем максимальную нагрузку на хост
ADMIN - почта админа/админов.
Пользуйтесь
 
K

kenny

Гость
#2
Заливаем дамп всех sql файлов из директории
Код:
cd path/
PATH="path"
CMD=`ls -C1`
for i in $CMD; do
echo $i  >> /tmp/restore.log
mysql -uUSER -pPASSWORD DATA_BASE   < $PATH/$i
done
Скрипт меняется под нужды как угодно. Допустим нужно разархивировать кучу архивов.
Код:
#!/bin/sh
CMD=`ls -C1 path/`
for i in $CMD; do
echo $i >>/tmp/restore.log
7za e path/$i
done
Все предельно просто :)
 
K

kenny

Гость
#3
Легкий генератор паролей на моем любимом питошки)))
Код:
import string
from random import choice
 
size = 9
print ''.join([choice(string.letters + string.digits) for i in range(size)])
где size длина
Можно довести до такого состояния генерацию пароля {ht[ESLq2
Просто нужно изменить строчку на следующую
Код:
print ''.join([choice(string.printable) for i in range(size)])
Подробнее по модулю string можно прочитать в документации
 
Сверху