Czy istnieje odpowiednik tail -f dla ls?


7

Zasadniczo pytanie znajduje się w tytule. Chcę monitorować katalog pod kątem nowych plików, które są zapisywane lub usuwane, tak jak mogę monitorować plik dziennika tail -f. czy to możliwe?

Odpowiedzi:


16

Spróbuj obejrzeć.

Zaczerpnięte stąd :

watch -d ls -l

Próbowałem to z przyjacielem przed chwilą, wydaje się, że podświetlenie nie działa właściwie, podświetli pozornie losowy wybór. Próbowałem tego w terminalu OS X ssh'd na maszynie RHEL5, a mój przyjaciel próbował w terminalu GUI Ubuntu.

Niestety inotifywait nie jest obecny na maszynie RHEL5, więc nie mogę podać żadnych informacji na temat skuteczności tego polecenia.


inotifywaitjest częścią inotify-tools .
grawity

Dzięki. Wygląda na to, że jest to prawdopodobnie preferowane rozwiązanie, zwłaszcza z systemem, do którego można dodawać pliki binarne.
arpz

Umieść polecenie w cudzysłowie, jeśli polecenie ma jedną lub więcej potoków. watch -d "ls -l | grep avi".
Bibhas

6

inotifywaitfrom inotify-tools pokazuje dziennik modyfikacji plików w czasie rzeczywistym, podobny do tail -f.

inotifywait -m -q -e create,delete,move /dir

-rmożna dodać do zegarków rekurencyjnych (może być trochę powolny w przypadku wielu podkatalogów), --formataby zmienić format wyjściowy (np. dodać znaczniki czasu lub dołączyć ścieżkę i nazwę pliku).

Przykładowe dane wyjściowe:

/home/grawity/code/bin/ CREATE,ISDIR fallback
/home/grawity/code/bin/ CREATE gnome-inhibit-list
/home/grawity/code/bin/ CREATE k5translate
/home/grawity/code/bin/ MOVED_FROM logout
/home/grawity/code/bin/ DELETE pacman-sigstats

(Nawiasem mówiąc, tail -f używa również inotify do śledzenia zmian w pliku).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.