powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите с egrep и awk???
4 сообщений из 4, страница 1 из 1
Помогите с egrep и awk???
    #37449389
armix2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть код который должен отслеживать состояние вебсервера, иногда он глючит и выдает это

Код: plaintext
1.
2.
3.
4.
( 98 )Address already in use: make_sock: could not bind to address [::]: 80 
( 98 )Address already in use: make_sock: could not bind to address  0 . 0 . 0 . 0 : 80 
no listening sockets available, shutting down
Unable to open logs

нужно както отслеживать, если есть текст
Код: plaintext
[::]: 80 
или
Код: plaintext
 0 . 0 . 0 . 0 : 80 
- нужно перезагружать сервак.

Я сделал так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
freemem=`/etc/init.d/httpd start | egrep '[::]:80' | awk '{print $11}'`
echo $freemem
if [[ $freemem == "[::]:80" ]]
then
    echo "Find! $freemem"
    killall - 9  httpd
    /etc/init.d/httpd stop
    /etc/init.d/httpd start
    date +%d.%m.%Y_%R:%S > /etc/cron.minute/checkapachestatus.log
else
    echo "Not find! $freemem" > /dev/null  2 >& 1 
fi


не работает, не пойму почему???
...
Рейтинг: 0 / 0
Помогите с egrep и awk???
    #37449719
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
armix2000,

На чем срубается или что не работает?

>egrep '[::]:80'

Здесь [ и ] - служебные символы. Скорее всего их нужно экранировать.

Впрочем, весь этот фрагмент с egep кажется лишним. awk и так вернет 11 поле, которое желаете проверять. Или наоборот - лишнее awk, так как grep уже обнаружит нужный код в строке.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Помогите с egrep и awk???
    #37450302
armix2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vklearmix2000,

На чем срубается или что не работает?

>egrep '[::]:80'

Здесь [ и ] - служебные символы. Скорее всего их нужно экранировать.

Впрочем, весь этот фрагмент с egep кажется лишним. awk и так вернет 11 поле, которое желаете проверять. Или наоборот - лишнее awk, так как grep уже обнаружит нужный код в строке.



выводит весь текст
Код: plaintext
1.
2.
3.
4.
( 98 )Address already in use: make_sock: could not bind to address [::]: 80 
( 98 )Address already in use: make_sock: could not bind to address  0 . 0 . 0 . 0 : 80 
no listening sockets available, shutting down
Unable to open logs
...
Рейтинг: 0 / 0
Помогите с egrep и awk???
    #37450566
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
$ cat txt
( 98 )Address already in use: make_sock: could not bind to address [::]: 80 
( 98 )Address already in use: make_sock: could not bind to address  0 . 0 . 0 . 0 : 80 
no listening sockets available, shutting down
Unable to open logs

$ awk '{if($11 == "[::]:80") print "alarm"}' txt
alarm

$ grep '\[::\]:80' txt
( 98 )Address already in use: make_sock: could not bind to address [::]: 80 

Возможны еще варианты
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите с egrep и awk???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]