W systemie Linux, używając komendy tailf
, w jaki sposób mogę zakończyć kilka plików dziennika znajdujących się w folderze i podfolderach?Jak zakończyć wszystkie pliki dziennika w folderze i podfolderach?
Odpowiedz
zapisywać wszystkie pliki w folderze, można przejść do folderu i napisać
tailf *.log
Aby dodać podfoldery do polecenia tailf użyć
tailf **/*.log
Zamiast tailf
można również użyj tail -f
. Oczywiście można poprawić wyrażenie regularne, aby dopasować tylko określone nazwy plików.
Spowoduje to rekursywne znalezienie wszystkich plików * .log w bieżącym katalogu i jego podfolderach oraz ich przekierowanie.
find . -type f \(-name "*.log" \) -exec tail -f "$file" {} +
ten sposób znaleźć pliki rekursywnie, wypisywanie linii począwszy od linii 5 w każdym pliku i zapisać na concat.txt
find . -type f \(-name "*.dat" \) -exec tail -n+5 -q "$file" {} + |tee concat.txt
Jeśli wszystkie pliki dziennika nie mają to samo rozszerzenie. Możesz użyć następującego polecenia.
tail -f **/*
Nie działa z podfolderami. –
Aby do folderu ogona + podkatalogi 'tail -f ../logs/**/*log* ../ logs/* log *' –
Czy istnieje sposób na ogonie wszystkie pliki i wszystkie nowe pliki (jeszcze nie istnieje)? –
przy użyciu polecenia oglądania. –