Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: tuxi в Jun 10, 2005, 11:11



Титла: bash
Публикувано от: tuxi в Jun 10, 2005, 11:11
OS RedHat 9
Във /proc/net/ip_conntrack се намират всички форлърдни
(редиректнати) връзки
 Направих скрипт който се стартира всяка минута от Cron и
записва само връзките които ми трябват

#!/bin/bash
 cat /proc/net/ip_conntrack | grep "dport=55[0-9][0-9] " >>
connections.stat

 Обаче искам в началото на всеки ред във connections.stat да
се записва датата и чеса когато са записани.

Надявам се някой да може да помогне


Титла: bash
Публикувано от: rpetrov в Jun 10, 2005, 11:55
Примерен код
#!/bin/sh
{
date
cat /proc/net/ip_conntrack | grep "dport=55[0-9][0-9] "
} >> connections.stat

виж date(1) как да зададеш формат


Титла: bash
Публикувано от: tuxi в Jun 10, 2005, 12:22
Цитат (rpetrov @ Юни 10 2005,12:55)
Примерен код
#!/bin/sh
{
date
cat /proc/net/ip_conntrack | grep "dport=55[0-9][0-9] "
} >> connections.stat

виж date(1) как да зададеш формат

така слага датата само в началото на всяко прочитане на /proc/net/ip_conntrack, а аз искам на всеки прочетен ред от фаила да слага дата и време

Примерен код

Fri Jun 10 12:13:35 EEST 2005 udp      17 20 src=204.112.213.137 dst=10.11.164.2 sport=60972 dport=6881 [UNREPLIED] src=10.11.164.2 dst=204.112.213.137 sport=6881 dport=60972 use=1
Fri Jun 10 12:13:35 EEST 2005 udp      17 10 src=192.168.0.2 dst=82.228.88.128 sport=6881 dport=6881 src=82.228.88.128 dst=10.11.164.2 sport=6881 dport=6881 use=1
Fri Jun 10 12:13:35 EEST 2005 udp      17 10 src=192.168.0.2 dst=82.228.88.128 sport=6881 dport=6881 src=82.228.88.128 dst=10.11.164.2 sport=6881 dport=6881 use=1


Титла: bash
Публикувано от: Hapkoc в Jun 10, 2005, 12:42
може така:

---
#!/bin/bash

while read line; do
    if [ ! -z "`echo $line | grep \"dport=55[0-9][0-9]\"`" ]; then
        echo "`date` $line" >> connections.stat
    fi
done < /proc/net/ip_conntrack
---


Титла: bash
Публикувано от: tuxi в Jun 10, 2005, 18:30
пуснах скрипта но фаила не се създава


Титла: bash
Публикувано от: rpetrov в Jun 10, 2005, 21:56
а ако зададеш абсолютно име, например /var/log/connections.stat , там ли е ?
файла със скрипта има ли право за изпълнение ?

може би трябва да пуснеш и да се изпраща поща от cron - помага за откриването на проблеми.


Титла: bash
Публикувано от: sdr в Jun 10, 2005, 22:04
man gawk
man sed

което те кефи повече него ползвай :)


Титла: bash
Публикувано от: tuxi в Jun 11, 2005, 19:12
Извинявм се грешката е моя
Вместо connections.stat бях написал connection.test , a test е шел команда и за това фаила не ми се създаваше.
Мерси много за помоща!!!!! :)