Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по FreeBSD » FreeBSD - [решено] Скрипт автоответа на sh

Ответить
Настройки темы
FreeBSD - [решено] Скрипт автоответа на sh

Старожил


Сообщения: 173
Благодарности: 4

Профиль | Отправить PM | Цитировать


Задача:
Каждый день утром проверять объем файла и в случае превышения размера отправлять письмо сотруднику и в группу админов с текстом:
"ААА! Я лопну!!!"

Сейчас у меня есть только файл со списком граждан, которым нужно отправить сообщение. Этот список создается в файле, к концу файла прикрепляется стандартное сообщение из другого файла и отправляется админам. Затем файл удаляется.
Код: Выделить весь код
cd/var/mail/
find . -size +20M | awk  ‘{print substr($0,3,25)}’ > /etc/ipfw/temp_auto
cd /etc/ipfw
cat temp_auto auto_answer_ru | mail -s “Test” admin
rm /etc/ipfw/temp_auto
Как мне по строчно обработать этот файл - одна строка один адрес почты.
Содержимое файла temp_auto
Код: Выделить весь код
nikolay.ivanov
petr.sidorov
Можно ли это сделать без создания файла и последующего его удаления?

Отправлено: 15:43, 05-07-2012

 

Старожил


Сообщения: 173
Благодарности: 4

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
cd/var/mail/
find . -size +20M | awk  ‘{print substr($0,3,25)}’ > /etc/ipfw/temp_auto
cd /etc/ipfw
for i in $( cat temp_auto ); do
echo "Уважаемый(ая), $i. Ваш почтовый адрес бла бла бла..." | mail -s "AAA. Я лопну!!!!" $i
done
rm /etc/ipfw/temp_auto
Вопрос про не создания файла, пока актуально

Отправлено: 17:29, 05-07-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 29
Благодарности: 2

Профиль | Отправить PM | Цитировать


Так вместо cat temp_auto и поставь find|awk (естественно, без перенаправления в файл)

Отправлено: 01:33, 06-07-2012 | #3


Старожил


Сообщения: 173
Благодарности: 4

Профиль | Отправить PM | Цитировать


zeroka_no_onna,

А как добавить проверку if else?
вот так коряво я пытался сделать проверку на осутствие файлов. Не работает конечно же.
Код: Выделить весь код
cd /var/mail
i=find . -size +20M | awk '{print substr($0,3,25)}' | wc -l'
while [$i -gt 0]
do
for a in $(find . -size +20M | awk '{print substr($0,3,25)}' )
echo "Hello, $a!!!" | mail admin
done
done
Как можно результат выполнения команды присвоить переменной?

Отправлено: 10:39, 06-07-2012 | #4


Новый участник


Сообщения: 29
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата:
проверку на осутствие файлов.
Зачем?find же, он ничего не выведет если файла не будет.
Цитата:
Как можно результат выполнения команды присвоить переменной?
Почти так, как сделано.Cм. ниже.
А вобще awk для простых задач лучше не использовать, он относительно "тяжёл".Возможно при помощи cut/sed лучше выделить нужную часть http://www.starlink.rl.ac.uk/docs/sc4.htx/node38.html
Или даже просто возможностями шелла(да и заодно решится это одним вызовом есно)
Код: Выделить весь код
for a in $(find . -size +10k); do
	#Вот присвоение переменной результата команды
	NAME=$(echo $a|awk '{print substr($0,3,25)}')
	echo "Hello, $NAME!!!"

	#Вот без всяких аваков и прочих ненужных усложнений
	echo "Hello, ${a#./}!!!"
done

Отправлено: 12:33, 06-07-2012 | #5



Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по FreeBSD » FreeBSD - [решено] Скрипт автоответа на sh

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - CMD скрипт Den Скриптовые языки администрирования Windows 1 30-03-2012 18:59
VBS/WSH/JS - [решено] скрипт проверяет файл по дате после запускает другой скрипт dot85 Скриптовые языки администрирования Windows 9 01-08-2011 14:22
Разное - скрипт на PHP P O M A Вебмастеру 26 07-01-2008 15:58
Скрипт Buratino40 Хочу все знать 1 14-05-2006 22:41
Скрипт Guest Вебмастеру 1 30-01-2003 12:26




 
Переход