Cara Mencari dan Mengurutkan File Berdasarkan Tanggal dan Waktu Modifikasi di Linux


Biasanya kita terbiasa menyimpan banyak informasi dalam bentuk file di sistem kita. Beberapa, file tersembunyi, beberapa disimpan dalam folder terpisah yang dibuat untuk kemudahan pemahaman kita, sementara beberapa lainnya apa adanya. Tapi, semua ini memenuhi direktori kami; biasanya desktop, membuatnya terlihat berantakan. Namun, masalah muncul ketika kita perlu mencari file tertentu yang dimodifikasi pada tanggal dan waktu tertentu dalam koleksi yang sangat banyak ini.

Orang yang terbiasa dengan GUI dapat menemukannya menggunakan File Manager, yang berisi daftar file dalam format daftar panjang, membuatnya mudah untuk mengetahui apa yang kita inginkan, namun para pengguna memiliki kebiasaan layar hitam, atau bahkan siapa pun yang bekerja pada server yang tidak memiliki GUI akan menginginkan perintah sederhana atau serangkaian perintah yang dapat memudahkan pencarian mereka.

Keindahan Linux yang sebenarnya terlihat di sini, karena Linux memiliki kumpulan perintah yang jika digunakan secara terpisah atau bersama-sama dapat membantu untuk mencari suatu file, atau mengurutkan kumpulan file menurut namanya, tanggal modifikasi, waktu pembuatan, atau bahkan apa pun. filter yang dapat Anda pikirkan untuk diterapkan untuk mendapatkan hasil.

Di sini, kami akan mengungkap kekuatan sebenarnya dari Linux dengan memeriksa serangkaian perintah yang dapat membantu menyortir file atau bahkan daftar file berdasarkan Tanggal dan Waktu.

Utilitas Linux untuk Mengurutkan File di Linux

Beberapa utilitas baris perintah dasar Linux yang cukup untuk mengurutkan direktori berdasarkan Tanggal dan Waktu adalah:

perintahku

ls – Mencantumkan isi direktori, utilitas ini dapat membuat daftar file dan direktori dan bahkan dapat mencantumkan semua informasi status tentangnya termasuk: tanggal dan waktu modifikasi atau akses, izin, ukuran, pemilik, grup, dll. .

Kami telah membahas banyak artikel tentang perintah ls dan perintah pengurutan Linux, Anda dapat menemukannya di bawah:

  1. Pelajari Perintah ls dengan 15 Contoh Dasar
  2. Pelajari 7 Perintah Tingkat Lanjut dengan Contoh
  3. 15 Pertanyaan Wawancara Berguna tentang Perintah ls di Linux

perintah pengurutan

sort – Perintah ini dapat digunakan untuk mengurutkan keluaran pencarian apa pun berdasarkan bidang apa pun atau kolom tertentu pada bidang tersebut.

Kami telah membahas dua artikel tentang perintah pengurutan Linux, Anda dapat menemukannya di bawah:

  1. 14 Contoh Perintah 'sort' Linux – Bagian 1
  2. 7 Contoh Perintah 'sort' Linux yang Berguna – Bagian 2

Perintah-perintah ini sendiri merupakan perintah yang sangat kuat untuk dikuasai jika Anda bekerja di layar hitam dan harus berurusan dengan banyak file, hanya untuk mendapatkan file yang Anda inginkan.

Beberapa Cara Mengurutkan File Menggunakan Tanggal dan Waktu

Di bawah ini adalah daftar perintah untuk mengurutkan berdasarkan Tanggal dan Waktu.

1. Daftar File Berdasarkan Waktu Modifikasi

Perintah di bawah ini mencantumkan file dalam format daftar panjang, dan mengurutkan file berdasarkan waktu modifikasi, yang terbaru terlebih dahulu. Untuk mengurutkan dalam urutan terbalik, gunakan saklar '-r' dengan perintah ini.

# ls -lt

total 673768
-rwxr----- 1 tecmint tecmint  3312130 Jan 19 15:24 When You Are Gone.MP3
-rwxr----- 1 tecmint tecmint  4177212 Jan 19 15:24 When I Dream At Night - Marc Anthony-1.mp3
-rwxr----- 1 tecmint tecmint  4177212 Jan 19 15:24 When I Dream At Night - Marc Anthony.mp3
-rwxr----- 1 tecmint tecmint  6629090 Jan 19 15:24 Westlife_Tonight.MP3
-rwxr----- 1 tecmint tecmint  3448832 Jan 19 15:24 We Are The World by USA For Africa (Michael Jackson).mp3
-rwxr----- 1 tecmint tecmint  8580934 Jan 19 15:24 This Love.mp3
-rwxr----- 1 tecmint tecmint  2194832 Jan 19 15:24 The Cross Of Changes.mp3
-rwxr----- 1 tecmint tecmint  5087527 Jan 19 15:24 T.N.T. For The Brain 5.18.mp3
-rwxr----- 1 tecmint tecmint  3437100 Jan 19 15:24 Summer Of '69.MP3
-rwxr----- 1 tecmint tecmint  4360278 Jan 19 15:24 Smell Of Desire.4.32.mp3
-rwxr----- 1 tecmint tecmint  4582632 Jan 19 15:24 Silence Must Be Heard 4.46.mp3
-rwxr----- 1 tecmint tecmint  4147119 Jan 19 15:24 Shadows In Silence 4.19.mp3
-rwxr----- 1 tecmint tecmint  4189654 Jan 19 15:24 Sarah Brightman  & Enigma - Eden (remix).mp3
-rwxr----- 1 tecmint tecmint  4124421 Jan 19 15:24 Sade - Smooth Operator.mp3
-rwxr----- 1 tecmint tecmint  4771840 Jan 19 15:24 Sade - And I Miss You.mp3
-rwxr----- 1 tecmint tecmint  3749477 Jan 19 15:24 Run To You.MP3
-rwxr----- 1 tecmint tecmint  7573679 Jan 19 15:24 Roger Sanchez_Another Chance_Full_Mix.mp3
-rwxr----- 1 tecmint tecmint  3018211 Jan 19 15:24 Principal Of Lust.3.08.mp3
-rwxr----- 1 tecmint tecmint  5688390 Jan 19 15:24 Please Forgive Me.MP3
-rwxr----- 1 tecmint tecmint  3381827 Jan 19 15:24 Obvious.mp3
-rwxr----- 1 tecmint tecmint  5499073 Jan 19 15:24 Namstey-London-Viraaniya.mp3
-rwxr----- 1 tecmint tecmint  3129210 Jan 19 15:24 MOS-Enya - Only Time (Pop Radio mix).m

2. Daftar File Berdasarkan Waktu Akses Terakhir

Daftar file dalam direktori berdasarkan waktu akses terakhir, yaitu berdasarkan waktu terakhir file diakses, tidak diubah.

# ls -ltu

total 3084272
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:24 Music
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 Linux-ISO
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 Music-Player
drwx------  3 tecmint tecmint       4096 Jan 19 15:22 tor-browser_en-US
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 bin
drwxr-xr-x 11 tecmint tecmint       4096 Jan 19 15:22 Android Games
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 Songs
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 renamefiles
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 katoolin-master
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 Tricks
drwxr-xr-x  3 tecmint tecmint       4096 Jan 19 15:22 Linux-Tricks
drwxr-xr-x  6 tecmint tecmint       4096 Jan 19 15:22 tuptime
drwxr-xr-x  4 tecmint tecmint       4096 Jan 19 15:22 xdm
drwxr-xr-x  2 tecmint tecmint      20480 Jan 19 15:22 ffmpeg usage
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:22 xdm-helper

3. Daftar File Berdasarkan Waktu Modifikasi Terakhir

Daftar file dalam direktori berdasarkan waktu modifikasi terakhir informasi status file, atau 'ctime'. Perintah ini akan mencantumkan file tersebut terlebih dahulu yang informasi statusnya seperti: pemilik, grup, izin, ukuran, dll baru saja diubah.

# ls -ltc

total 3084272
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 15:24 Music
drwxr-xr-x  2 tecmint tecmint       4096 Jan 19 13:05 img
-rw-------  1 tecmint tecmint     262191 Jan 19 12:15 tecmint.jpeg
drwxr-xr-x  5 tecmint tecmint       4096 Jan 19 10:57 Desktop
drwxr-xr-x  7 tecmint tecmint      12288 Jan 18 16:00 Downloads
drwxr-xr-x 13 tecmint tecmint       4096 Jan 18 15:36 VirtualBox VMs
-rwxr-xr-x  1 tecmint tecmint        691 Jan 13 14:57 special.sh
-rw-r--r--  1 tecmint tecmint     654325 Jan  4 16:55 powertop-2.7.tar.gz.save
-rw-r--r--  1 tecmint tecmint     654329 Jan  4 11:17 filename.tar.gz
drwxr-xr-x  3 tecmint tecmint       4096 Jan  4 11:04 powertop-2.7
-rw-r--r--  1 tecmint tecmint     447795 Dec 31 14:22 Happy-New-Year-2016.jpg
-rw-r--r--  1 tecmint tecmint         12 Dec 18 18:46 ravi
-rw-r--r--  1 tecmint tecmint       1823 Dec 16 12:45 setuid.txt
...

Jika saklar '-a' digunakan dengan perintah di atas, mereka dapat membuat daftar dan mengurutkan bahkan file tersembunyi di direktori saat ini, dan saklar '-r' mencantumkan output secara terbalik memesan.

Untuk pengurutan yang lebih mendalam, seperti pengurutan berdasarkan Output dari perintah find, namun ls juga dapat digunakan, tetapi ada 'sort ' terbukti lebih bermanfaat karena outputnya mungkin tidak hanya berisi nama file tetapi kolom apa pun yang diinginkan pengguna.

Perintah di bawah ini menunjukkan penggunaan sort dengan perintah find untuk mengurutkan daftar file berdasarkan Tanggal dan Waktu.

Untuk mempelajari lebih lanjut tentang perintah find, ikuti tautan ini: 35 Contoh Praktis Perintah 'find' di Linux

4. Menyortir File berdasarkan Bulan

Di sini, kita menggunakan perintah find untuk menemukan semua file di direktori root ('/') dan kemudian mencetak hasilnya sebagai: Bulan di file mana diakses dan kemudian nama file. Dari hasil lengkap tersebut, berikut kami mencantumkan 11 entri teratas.

# find / -type f -printf "\n%Ab %p" | head -n 11

Dec /usr/lib/nvidia/pre-install
Dec /usr/lib/libcpufreq.so.0.0.0
Apr /usr/lib/libchromeXvMCPro.so.1.0.0
Apr /usr/lib/libt1.so.5.1.2
Apr /usr/lib/libchromeXvMC.so.1.0.0
Apr /usr/lib/libcdr-0.0.so.0.0.15
Dec /usr/lib/msttcorefonts/update-ms-fonts
Nov /usr/lib/ldscripts/elf32_x86_64.xr
Nov /usr/lib/ldscripts/elf_i386.xbn
Nov /usr/lib/ldscripts/i386linux.xn

Perintah di bawah ini mengurutkan output menggunakan key sebagai kolom pertama, yang ditentukan oleh '-k1' dan kemudian mengurutkan berdasarkan Bulan seperti yang ditentukan oleh 'M' di depannya.

# find / -type f -printf "\n%Ab %p" | head -n 11 | sort -k1M

Apr /usr/lib/libcdr-0.0.so.0.0.15
Apr /usr/lib/libchromeXvMCPro.so.1.0.0
Apr /usr/lib/libchromeXvMC.so.1.0.0
Apr /usr/lib/libt1.so.5.1.2
Nov /usr/lib/ldscripts/elf32_x86_64.xr
Nov /usr/lib/ldscripts/elf_i386.xbn
Nov /usr/lib/ldscripts/i386linux.xn
Dec /usr/lib/libcpufreq.so.0.0.0
Dec /usr/lib/msttcorefonts/update-ms-fonts
Dec /usr/lib/nvidia/pre-install

5. Urutkan File Berdasarkan Tanggal

Di sini, sekali lagi kita menggunakan perintah find untuk menemukan semua file di direktori root, tetapi sekarang kita akan mencetak hasilnya sebagai: tanggal terakhir file diakses, terakhir waktu file diakses dan kemudian nama file. Dari jumlah itu kami mengambil 11 entri teratas.

# find / -type f -printf "\n%AD %AT %p" | head -n 11

12/08/15 11:30:38.0000000000 /usr/lib/nvidia/pre-install
12/07/15 10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0
04/11/15 06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0
04/11/15 06:08:34.9939910430 /usr/lib/libt1.so.5.1.2
04/11/15 06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0
04/11/15 06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15
12/18/15 11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts
11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr
11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn
11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn

Perintah sortir di bawah ini pertama-tama mengurutkan berdasarkan digit terakhir tahun tersebut, kemudian mengurutkan berdasarkan digit terakhir bulan dalam urutan terbalik dan terakhir mengurutkan berdasarkan kolom pertama. Di sini, '1.8' berarti kolom ke-8 dari kolom pertama dan 'n' di depannya berarti pengurutan numerik, sedangkan 'r' menunjukkan urutan terbalik penyortiran.

# find / -type f -printf "\n%AD %AT %p" | head -n 11 | sort -k1.8n -k1.1nr -k1

12/07/15 10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0
12/08/15 11:30:38.0000000000 /usr/lib/nvidia/pre-install
12/18/15 11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts
11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr
11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn
11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn
04/11/15 06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0
04/11/15 06:08:34.9939910430 /usr/lib/libt1.so.5.1.2
04/11/15 06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15
04/11/15 06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0

6. Menyortir File Berdasarkan Waktu

Di sini, sekali lagi kita menggunakan perintah find untuk membuat daftar 11 file teratas di direktori root dan mencetak hasilnya dalam format: terakhir kali file diakses dan kemudian nama file.

# find / -type f -printf "\n%AT %p" | head -n 11

11:30:38.0000000000 /usr/lib/nvidia/pre-install
10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0
06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0
06:08:34.9939910430 /usr/lib/libt1.so.5.1.2
06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0
06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15
11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts
12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr
12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn
12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn

Perintah di bawah ini mengurutkan keluaran berdasarkan kolom pertama dari bidang keluaran pertama yang merupakan digit pertama jam.

# find / -type f -printf "\n%AT %p" | head -n 11 | sort -k1.1n

06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0
06:08:34.9939910430 /usr/lib/libt1.so.5.1.2
06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15
06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0
10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0
11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts
11:30:38.0000000000 /usr/lib/nvidia/pre-install
12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr
12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn
12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn

7. Mengurutkan Keluaran ls -l berdasarkan Tanggal

Perintah ini mengurutkan output dari perintah 'ls -l' berdasarkan bidang ke-6 berdasarkan bulan, kemudian berdasarkan bidang ke-7 yaitu tanggal, secara numerik.

# ls -l | sort -k6M -k7n

total 116
-rw-r--r-- 1 root root     0 Oct  1 19:51 backup.tgz
drwxr-xr-x 2 root root  4096 Oct  7 15:27 Desktop
-rw-r--r-- 1 root root 15853 Oct  7 15:19 powertop_report.csv
-rw-r--r-- 1 root root 79112 Oct  7 15:25 powertop.html
-rw-r--r-- 1 root root     0 Oct 16 15:26 file3
-rw-r--r-- 1 root root    13 Oct 16 15:17 B
-rw-r--r-- 1 root root    21 Oct 16 15:16 A
-rw-r--r-- 1 root root    64 Oct 16 15:38 C

Kesimpulan

Demikian pula, dengan memiliki pengetahuan tentang perintah sort, Anda dapat mengurutkan hampir semua daftar berdasarkan bidang apa pun dan bahkan kolom mana pun yang Anda inginkan. Ini adalah beberapa trik untuk membantu Anda mengurutkan file berdasarkan Tanggal atau Waktu. Anda dapat membuat trik sendiri berdasarkan ini. Namun, jika Anda memiliki trik menarik lainnya, Anda selalu dapat menyebutkannya di komentar Anda.