grep -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' $SITE_CONTENT > $APACHELINK Nie dziala mi a jak zrobie
grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' $SITE_CONTENT > $APACHELINK To dziala?
Ogolnie skrypt ma wyciagac adresy IP z calego pobranego pliku html i wrzucac do www na apacha. Kilka la temu mi tak dzialalo, ale teraz cos sie zmienilo chyba, i musialem zmienic grep, aby uzywal paremetru -o.
@m4rio: Zly sie wyslowilem, Bez polecenia -o, plik jest totalnie pusty. A wg mnie powinien byc wstanie wyciagnac cos z innego pliku, na ktorym operuje owym grepem. Ponizej wklejam czesc tego pliku, na ktoryp grep -E nie dziala, ale dziala grep
@m4rio: Rozumiem, ze parametr -o rrobi mi "exact match" zamiast typowego "contain", ale chodzi mi o to, ze grep -E po prostu nie mogl wygenerowac zadnego outputu na podstawie tego pliku, co pokazuje (abstrahujac od poprawnosci tego, co chcialem zobaczyc).
@Rudz1elec: do luftu ten grep, powinien się zaczynać znakiem początku linii ^ i kończąc lookbehindem (?=\/\d). A zamiast [0-9]{1,3} wystarczy \d ¯\..(ツ)../¯
Ktos mi wyjasni czemu
grep -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' $SITE_CONTENT > $APACHELINKNie dziala mi a jak zrobie
grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' $SITE_CONTENT > $APACHELINKTo dziala?
Ogolnie skrypt ma wyciagac adresy IP z calego pobranego pliku html i wrzucac do www na apacha.
Kilka la temu mi tak dzialalo, ale teraz cos sie zmienilo chyba, i musialem zmienic grep, aby uzywal paremetru -o.
SITE_CONTENT to jest to co robi wget dla strony https://dan.me.uk/bgplookup?asn=32590
Pierwsze polecenie:
bash
grep
Bez polecenia -o, plik jest totalnie pusty. A wg mnie powinien byc wstanie wyciagnac cos z innego pliku, na ktorym operuje owym grepem.
Ponizej wklejam czesc tego pliku, na ktoryp grep -E nie dziala, ale dziala grep
wget -O - 'dan.me.uk/bgplookup?asn=32590' 2>/dev/null \| grep -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' \
| tail -n 4
Hmm, mialem cos z-------o z wgetem wczesniej chyba, teraz oczywiscie mie dziala, ale nie wiem jakim cudem.
^i kończąc lookbehindem(?=\/\d). A zamiast[0-9]{1,3}wystarczy\d¯\..(ツ)../¯grep -P '^(\d{1,3}\.){3}\d{1,3}(?=\/\d)'