Автор Тема: bash script за проверка на файл  (Прочетена 1054 пъти)

mrowcp

  • Напреднали
  • *****
  • Публикации: 450
    • Профил
Здравейте,
някой да може да ми даде примерен скрипт който да прави следното:

cat file.log
May 20 07:08:44 shells sshd[23440]: Failed password for root from 222.73.163.21 port 55803 ssh2
May 20 07:08:52 shells sshd[23442]: Failed password for root from 222.73.163.21 port 56192 ssh2
May 20 10:01:10 shells sshd[23444]: Failed password for root from 222.73.163.21 port 50611 ssh2
May 20 10:01:15 shells sshd[23446]: Failed password for root from 222.73.163.21 port 50961 ssh2

Ако едно и също IP има повече от 3 реда записни в file.log, дами праща е-майл.Часта с мейла знам как да стане, но не мога да задам как да чете точно мястото с ИП-то.Може евентуално да чете всичко след "from" до "port" :)
Мерси
Активен

Some Things Just Are The Way They Are

b2l

  • Напреднали
  • *****
  • Публикации: 4786
  • Distribution: MCC Interim
  • Window Manager: - // - // -
  • ...sometimes I feel like screaming... || RTFM!
    • Профил
    • WWW
Re: bash script за проверка на файл
« Отговор #1 -: May 22, 2010, 21:43 »
Защо не опиташ сам да си го напишеш. Само ще ти помогна да вземеш IT-то:
Код
GeSHi (Bash):
  1. awk  '{print $11}' test
къдте test беше моя файл с твоите редове информация.
Активен

"Човекът е въже, опънато между звяра и свръхчовека, въже над пропаст. Човекът е нещо, което трябва да бъде превъзмогнато." - Фр. Ницше

mrowcp

  • Напреднали
  • *****
  • Публикации: 450
    • Профил
Re: bash script за проверка на файл
« Отговор #2 -: May 22, 2010, 22:28 »
Защо не опиташ сам да си го напишеш. Само ще ти помогна да вземеш IT-то:
Код
GeSHi (Bash):
  1. awk  '{print $11}' test
къдте test беше моя файл с твоите редове информация.

мерси :) вече имам няколко идеи.Ще пробвам и ще пиша ако има проблем.
Активен

Some Things Just Are The Way They Are

radoulov

  • Напреднали
  • *****
  • Публикации: 116
    • Профил
Re: bash script за проверка на файл
« Отговор #3 -: May 22, 2010, 23:40 »
Код
GeSHi (Bash):
  1. awk '++_[$11] > 3 { exit 1 }' logfile ||
  2.  send_your_mail_here

Активен

mrowcp

  • Напреднали
  • *****
  • Публикации: 450
    • Профил
Re: bash script за проверка на файл
« Отговор #4 -: May 23, 2010, 15:00 »
Код
GeSHi (Bash):
  1. awk '++_[$11] > 3 { exit 1 }' logfile ||
  2.  send_your_mail_here

Мерси :) Определено напредвам.
Оказа се, че има доста начини да бъде направено едно и също нещо

Код
GeSHi (Bash):
  1. cut -d " " -f 11

пак показва само 11ти ред.
Активен

Some Things Just Are The Way They Are

mrowcp

  • Напреднали
  • *****
  • Публикации: 450
    • Профил
Re: bash script за проверка на файл
« Отговор #5 -: May 23, 2010, 16:40 »
Нещо запецнах :)
Проблема е следния:

Код:
cat ip.log
May 20 07:08:52 shells sshd[23442]: Failed password for root from 222.73.163.21 port 56192 ssh2
May 20 07:08:52 shells sshd[23442]: Failed password for root from 192.168.50.1 port 56192 ssh2
May 20 07:08:52 shells sshd[23442]: Failed password for root from 192.168.50.1 port 56192 ssh2
May 20 07:08:52 shells sshd[23442]: Failed password for root from 192.168.100.9 port 56192 ssh2
May 20 07:08:52 shells sshd[23442]: Failed password for root from 192.168.100.9 port 56192 ssh2
May 20 07:08:52 shells sshd[23442]: Failed password for root from 192.192.192.192 port 56192 ssh2

Код:
cat ip.log |awk '++_[$11] > 1 { print $11 }'
192.168.50.1
192.168.100.9

до тук работи добре, но когато задам да е по-малък от 2ка ми връща всичките IP-та:

Код:
cat ip.log |awk '++_[$11] < 1 { print $11 }'

и

Код:
cat ip.log |awk '++_[$11] < 2 { print $11 }'
222.73.163.21
192.168.50.1
192.168.100.9
192.192.192.192

а тук би трябвало да се виждат само 222.73.163.21 и 192.192.192.192, защото за тях има само по един запис в ip.log-a.

P.S.

Код:
cat ip.log |awk '++_[$11] == 1 { print $11 }'
222.73.163.21
192.168.50.1
192.168.100.9
192.192.192.192

и така не става :(

ЕДИТ:
разбрах защо не работи.ама, че съм... кух :)
« Последна редакция: May 23, 2010, 18:54 от mrowcp »
Активен

Some Things Just Are The Way They Are

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Bash script и извеждането му
Web development
martien 3 6702 Последна публикация Nov 02, 2006, 11:55
от morbid_viper
Bash script за следене съдържанието на директория
Общ форум
mishot 9 7659 Последна публикация Mar 05, 2008, 00:38
от maniac
Bash script
Общ форум
vikktor 14 7796 Последна публикация Mar 04, 2009, 23:38
от CappY
Помощ за bash script
Общ форум
LinuxFanUNIX 4 4907 Последна публикация May 15, 2009, 23:05
от LinuxFanUNIX
bash script
Общ форум
samiboy 3 1925 Последна публикация May 26, 2009, 06:45
от Hapkoc