Saya memiliki pohon direktori dengan banyak cabang dan pohon. Namun, pada simpul teratas, hanya ada lima direktori, katakanlah AE. Di dalam pohon direktori, file diperbarui secara acak.
Saya ingin bisa mendapatkan daftar direktori (yaitu, seperti ls ) dengan waktu file yang dimodifikasi terakhir yang mencakup semua sub direktori dan file dalam direktori itu. Jadi saya akan berakhir dengan sesuatu seperti ini:
A 12 Juni 08:00 B 13 Juni 08:00 C 14 Juni 08:00 D 15 Juni 08:00 E 16 Juni 08:00
Saya sudah mencoba varian ls -t
, tetapi sepertinya tidak mempertimbangkan sub-direktori.
Ada juga sesuatu seperti ini find . -type f | xargs ls -tr
, tapi saya tidak bisa melihat cara untuk mendapatkan output yang saya ingin menggunakan ini (catatan: Saya sangat terbatas dalam pengetahuan Unix saya, karena Anda mungkin bisa tahu).
mod="$(find "$dir" -print0 | xargs -0 stat --format=%Y | sort -rn | head -1)"
mod=$(max=0; find "$1" -print0 | xargs -0 stat --format=%Y | while read -r dt; do test $dt -gt $max && max=$dt && echo $max; done | tail -1)
head -1
gaya tersebut sudah usang (dan pada sistem sayatail -1
penolakan sama sekali). Seharusnya begituhead -n 1
.Gunakan
ls -clRt
. Itu rekursif, dan urutkan berdasarkan waktu modifikasi terakhir.sumber