Sziasztok,
szeretnék egy olyan scriptet írni, ami folyamatosan monitorozza egy szöveges fájl végének bővülését és kiírja a képernyőre, de csak bizonyos prefixű sorok közötti sorokat jelenít meg.
A tail-lel ki tudom íratni a változásokat. Az awk-val és reguláris kifejezésekkel tudom szűrni a fájl tartalmát. Ez így külön-külön kipróbálva működik konzolban.
Legnagyobb gondom, hogy a bash scriptben csak egyszer fut le a tail és nem figyeli folyamatosan a fájlt.
Végtelen ciklus azért nem jó, mert a tail-nak elméletileg az a lényege, hogy csak akkor fut, ha van módosítás a fájlon. A watch program azért nem tetszik, mert levágja a szöveg végét a képernyő alján.
Az ötleteket előre is köszönöm!
- 3826 megtekintés
Hozzászólások
Az nem jó, hogy bizonyos időközönként stat-ot csinálsz a file-ról, s ha pl. modify time vagy hossz változott, akkor csinálsz tail-t, awk-t, akármit?
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
tail -f FILENAME | awk ...
- A hozzászóláshoz be kell jelentkezni
Vagy akár -F. Csak most néztem meg a manualt, s meglepődve tapasztalom, hogy ilyet is tud.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Esetleg perl + http://search.cpan.org/~mgrabnar/File-Tail-0.99.3/Tail.pm ?
- A hozzászóláshoz be kell jelentkezni
Szia!
Talan a swatch jo lehet erre.
- A hozzászóláshoz be kell jelentkezni
#!/bin/sh
tail -n 0 -F $1|awk /^$2/
miért nem jó?
- A hozzászóláshoz be kell jelentkezni
logtail a Te barátod...
- A hozzászóláshoz be kell jelentkezni