Не могу догадаться как сделатьФормат users.stats
192.168.0.2/255.255.255.255
192.168.0.55/255.255.255.255
192.168.0.21/255.255.255.255
и т.д.При подключении пользователя срабатывает Скрипт1
Скрипт1
#!/bin/bash
IP=$1
echo "$IP/255.255.255.255" >> /etc/users.statsПри отключении срабатывает Скрипт2
который должен убирать соответстующего $IP пользователя из users.statsСкрипт2
IP=$1
sed '/$IP.*\n/d' > /etc/users.statsА он вытерает всех.
Как сделать что б только соответствующего $IP?
>Скрипт2
>IP=$1
>sed '/$IP.*\n/d' > /etc/users.stats
>
>А он вытерает всех.
>Как сделать что б только соответствующего $IP?
sed -i '/$IP.*/d' /etc/users.stats
>>Скрипт2
>>IP=$1
>
>sed -i '/$IP.*/d' /etc/users.statsни чего не происходит, Скрипт1 продолжает писать $IP в users.stats, Скрипт2 не удаляет ничего.
>>>Скрипт2
>>>IP=$1
>>
>>sed -i '/$IP.*/d' /etc/users.stats
>
>ни чего не происходит, Скрипт1 продолжает писать $IP в users.stats, Скрипт2 не
>удаляет ничего.а, ну дык есессно, надо пользовать " вместо '
>а, ну дык есессно, надо пользовать " вместо '
>>>>Скрипт2
>>>>IP=$1
>>>
>>>sed -i '/$IP.*/d' /etc/users.stats - ни чего не происходит
sed -i "/$IP.*/d" /etc/users.stats - очищает весь файл
sed -i "/$IP.*/d" > /etc/users.stats - очищает весь файл
sed -i '/$IP.*/d' > /etc/users.stats - очищает весь файл
sed -i '/$IP.*/D' /etc/users.stats - ни чего не происходит
sed -i "/$IP.*/D" /etc/users.stats - очищает весь файл
sed -i "/$IP.*/D" > /etc/users.stats - очищает весь файл
sed -i '/$IP.*/D' > /etc/users.stats - очищает весь файл
ЁПРСТ ни че не работает...
grep -v "$IP" /etc/users.stats > /etc/users.result
>grep -v "$IP" /etc/users.stats > /etc/users.result
Не пойму зачем это?
Но все же...
grep -v "$IP" /etc/users.stats > /etc/users.result - файл users.result пуст
grep -v '$IP' /etc/users.stats > /etc/users.result - в файл users.result поподают $IP, только к чему бы это?
Лекарство найдено:
while [ -a /var/tmp/stgusers.tmp ];
do {
sleep 1 && continue
};
done
cat /var/stargazer/online.users | grep -v $2/255.255.255.255 >> /var/tmp/stgusers.tmp
rm -f /var/stargazer/online.users >/dev/null 2>/dev/null
mv /var/tmp/stgusers.tmp /var/stargazer/online.users >/dev/null 2>/dev/null
Всем огромное спасибо!