Saya tahu ls -t
akan menampilkan semua file berdasarkan waktu yang diubah. Tetapi bagaimana saya bisa membatasi hasil ini hanya untuk n file terakhir ?
tharl
karena cenderung memiliki semua yang saya butuhkan.
Saya tahu ls -t
akan menampilkan semua file berdasarkan waktu yang diubah. Tetapi bagaimana saya bisa membatasi hasil ini hanya untuk n file terakhir ?
tharl
karena cenderung memiliki semua yang saya butuhkan.
Jawaban:
Coba gunakan kepala atau ekor. Jika Anda menginginkan 5 file yang paling baru diubah:
ls -1t | head -5
-1 (itu satu) mengatakan satu file per baris dan kepala mengatakan ambil 5 entri pertama.
Jika Anda ingin 5 percobaan terakhir
ls -1t | tail -5
ls
dalam beberapa kolom, tetapi output dari ls
disalurkan ke perintah berikut dengan 1 file / dir sekaligus
ls -1t | head -n 6 | tail -n 5
Jawaban yang diterima hanya mencantumkan nama file, tetapi untuk mendapatkan 5 file teratas, seseorang juga dapat menggunakan:
ls -lht | head -6
dimana:
-l
keluaran dalam format daftar
-h
membuat keluaran dapat dibaca manusia (yaitu ukuran file muncul dalam kb, mb, dll.)
-t
mengurutkan keluaran dengan menempatkan file yang terakhir diubah terlebih dahulu
head -6
akan menampilkan 5 file karena ls
mencetak ukuran blok pada baris pertama keluaran.
Saya pikir ini adalah pendekatan yang sedikit lebih elegan dan mungkin lebih berguna.
Contoh keluaran:
total 26960312
-rw-r--r--@ 1 user staff 1.2K 11 Jan 11:22 phone2.7.py
-rw-r--r--@ 1 user staff 2.7M 10 Jan 15:26 03-cookies-1.pdf
-rw-r--r--@ 1 user staff 9.2M 9 Jan 16:21 Wk1_sem.pdf
-rw-r--r--@ 1 user staff 502K 8 Jan 10:20 lab-01.pdf
-rw-rw-rw-@ 1 user staff 2.0M 5 Jan 22:06 0410-1.wmv
Secara default ls -t
mengurutkan keluaran dari yang terbaru ke terlama, jadi kombinasi perintah yang digunakan bergantung pada arah mana Anda ingin pengurutan keluaran.
Untuk 5 file terbaru yang diurutkan dari terbaru ke terlama, gunakan head
untuk mengambil 5 baris pertama keluaran:
ls -t | head -n 5
Untuk 5 file terbaru yang diurutkan dari yang terlama ke terbaru, gunakan -r
sakelar untuk membalik ls
urutan urutan, dan gunakan tail
untuk mengambil 5 baris keluaran terakhir:
ls -tr | tail -n 5
ls -t
daftar file berdasarkan waktu pembuatan bukan waktu terakhir diubah. Gunakan ls -ltc
jika Anda ingin membuat daftar file berdasarkan waktu terakhir diubah dari terakhir ke pertama (atas ke bawah). Jadi untuk daftar n terakhir:ls -ltc | head ${n}
ls -lrt
mungkin membantu seseorang.