Nowe posty

Autor Wątek: Analizowanie danych z witryny internetowej (grep + sed)  (Przeczytany 1579 razy)

psyduck

  • Gość
Witam, potrzebuję pobrać IP mojego komputera ze strony mojeip.net. Wykonuję polecenie:
 
lynx mojeip.net | grep -o "Twoje IP:.*"

Twoje IP: 188.127.6.180
Wszystko pięknie, ale potrzebuję jeszcze pozbyć się "Twoje IP: " oraz przekierować wynik na przykład do jakiegoś pliku. W tym celu wykonuję:
lynx mojeip.net | grep -o "Twoje IP:.*" | sed 's/Twoje IP: //' /home/psyduck/dawid.txt
Niestety w drugim przypadku skrypt się zatrzymuje, kursor miga ale nic się nie wykonuje. Jeśli usunę plik, to dostaję błąd, że nie ma takiego pliku, więc kwestia dostępu odpada... sed po prostu nie wpisuje wyniku, lub wynik jest pusty. Proszę o poradę co robię źle.

pozdrawiam

Offline vanhelzing

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 314
    • Zobacz profil
Analizowanie danych z witryny internetowej (grep + sed)
« Odpowiedź #1 dnia: 2014-01-27, 22:04:17 »
Spróbuj czegoś takiego:
echo "Twoje IP: 192.168.0.1" | sed -n "s/Twoje IP:[ \\t\\n\\r]*\\([0-9\\.]*\\)/\\1/pi"

psyduck

  • Gość
Analizowanie danych z witryny internetowej (grep + sed)
« Odpowiedź #2 dnia: 2014-01-27, 22:15:30 »
Z echem to będzie działało, ale jak to zrobić aby wczytało to co wypluje grep? Chodzi o to aby jednym skryptem pobrać Ip ze strony zapisać do pliku...

Offline vanhelzing

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 314
    • Zobacz profil
Analizowanie danych z witryny internetowej (grep + sed)
« Odpowiedź #3 dnia: 2014-01-27, 22:33:51 »
Musisz uruchomić lynksa w trybie nieinteraktywnym (opcja -dump).
lynx -dump mojeip.net | sed -n "s/.*twoje ip: \\([0-9\\.]*\\)/\\1/pi" > plik.txt

psyduck

  • Gość
Analizowanie danych z witryny internetowej (grep + sed)
« Odpowiedź #4 dnia: 2014-01-27, 22:59:10 »
Działa :) Dzięki śliczne :)

pozdrawiam