Portál AbcLinuxu, 13. května 2025 23:30
Mám problém a nějak jsëm se do toho už zamotal.
Soubor ipadresy.log v něm např 192.168.100.1 192.168.100.100 192.168.100.101
pokud použiju
HLEDEJIP=`iptables -L ...........` #prostě něco v cyklu kde to bude hledat IP adresy.Dejme tomu že to najde momentálně 192.168.100.1
DATA=ipadresy.log
GREP=`grep $HLEJEJIP $DATA`
a zde je problém jelikož proměnou HLEDEJIP potřebuju aby hledal přesně to jest '$HLEDEJIP' což mi bash skript nebere. Prosim popostrčte mě někdo dál.Hledal jsem hledal ale marně. Potřebuju aby proměná $GREP měla vždy přesný a jednoznačný výsledek.V tomto případě to nalezne všechny tři IP což je pro mne nepřípustné. Děkuji za pomoc.
Máš nějaký důvod proč nenecháváš na jednom řádku pouze jednu IP? Mezery nahraď '\n' a máš po problému. Pokud Ti jde o něco jiného tak to ještě víc rozepiš.
Také je fajn přečíst si alespoň první řádek z manuálu:
grep - print lines matching a pattern
iptables -L -n | grep -o -E "([0-9]+\.)+[0-9]"ale to vypisuje tuším první ipadresu, čili src. Bude to chtít promyslet.
grep -Fw $HLEDEJIP $DATA
Marně hledám, co je v tom dotazu k nepochopení, že pánové výše napsali takové hlouposti No tak jsem se prospal do růžova a jak vidno protřepala se mi hlava. no jo no skoro měsíc bez pořádného spánku a jen jsem lítal k dítěti Díky moc já celou dobu zapomínal na w no prostě fakt blbčo. čím delší skript tím větší banalita
Pro ostatní dotaz to iptables jsem nerozepisoval jelikož je naprosto zbytečnej a dělá přesně to co po něm chci.Problém jsem měl jen a pouze s grep logu, kdy mi to vypisovalo i IP co jsem nechtěl
Celé to je o tom že mi to na serveru hlídá "neaktivní" usery a po předem definované době je mažu z iptables, takže pokud znovu chtěj na net musí se přihlásit.
Prostě něco jako hotspot nebo jak to popsat.......pokud by se někdo připojil na AP a chtěl by vlézt na net tak stejně pohoří na přihlašovacím dialogu a net už je chráněj ssl.
No a tenhle skriptík budu asi každou hodinu pouštět a pokud zadaná IP nemá provoz tak iptables delete jeho maškaráda a vše co tam má
Takže kujuuuuuuuuuu
HLEDEJIP=`iptables -L ...........` #prostě něco DATA=ipadresy.log GREP=`grep $HLEJEJIP $DATA`BTW proměnnou je možné si kdykoliv vypsat pomocí echo $PROMENNA, docela to usnadňuje debugování.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.