2012-10-08 12 views
8

Używam tail -f do drukowania zawartości stale zmieniającego się pliku. Gdy plik jest obcinany pokazuje się tak:wyczyść ekran, gdy plik zostanie obcięty podczas używania `tail -f`

blah (old).. 
blah more (old).. 
tail: file.out: file truncated 
blah.. 
blah more.. 

Można dostać niechlujny kiedy zbyt często zmieniać plik tak, że staje się trudne, aby zobaczyć, gdzie plik zaczyna/kończy. Czy jest jakiś sposób, aby ekran został obcięty, tak aby był wyświetlany w ten sposób?

tail: file.out: file truncated 
blah.. 
blah more.. 
+0

dlaczego blisko głosów? – none

Odpowiedz

9

Można użyć perl jedną wkładkę do filtrowania sygnału wyjściowego z tail -f

np

tail -f myfile.txt 2>&1 | perl -ne 'if (/file truncated/) {system 'clear'; print} else {print}' 
+0

działa świetnie, dzięki .. – none

+0

Dobrze słyszeć :-) – Benj

1

tailf myfile.txt

to tailf polecenie zamiast tail -f

z tego polecenia nie ma pliku obcięty powrócił na ekranie

+0

to nie oczyszcza starych treści z ekranu, jak chciałem. W każdym razie odpowiedź Benj działa, dziękuję .. – none

+0

Przepraszam, moje złe widziałem początkowo czysto, a potem patrząc na to zupełnie zapomniałem typowy błąd końca dnia :) cieszę się, że działa zgodnie z wymaganiami – Vahid

12

Wiem, że to stary , ale innym (potencjalnie prostszym) rozwiązaniem jest:

watch -n 1 cat myfile.txt

+0

+1, to jest to, co ja używam tych dni. nie pamiętam, skąd to mam ... – none

Powiązane problemy