7 Contoh Perintah 'sort' Linux yang Menarik - Bagian 2


Pada artikel terakhir kami, kami membahas berbagai contoh perintah 'sort'. Jika Anda melewatkannya, Anda dapat mengikutinya dengan mengikuti tautan di bawah ini. Dalam postingan ini, kami akan melanjutkan dari bagian terakhir yang kami tinggalkan di artikel sebelumnya, untuk membahas aspek perintah lainnya. Dengan cara ini, kedua artikel bersama-sama akan berfungsi sebagai panduan komprehensif untuk perintah 'sort' Linux.

Sebelum melanjutkan lebih jauh, buatlah file teks bernama ‘bulan.txt‘ dan isi dengan data yang disediakan di bawah.

echo -e "mar\ndec\noct\nsep\nfeb\naug" > month.txt
cat month.txt

15. Menyortir Konten File berdasarkan Bulan

Perintah berikut mengurutkan isi file “bulan.txt” dalam urutan kronologis berdasarkan singkatan atau nama bulan menggunakan opsi '-M' yang memerintahkan '< perintahsort' untuk memperlakukan data sebagai tanggal dan mengurutkannya sesuai dengan itu.

sort -M month.txt

16. Menyortir Output berdasarkan Ukuran File dalam Format yang Dapat Dibaca Manusia

Perintah berikut menggabungkan perintah 'ls' dan 'sort' untuk melakukan dua tugas. Pertama, ini mencantumkan isi direktori home pengguna dalam format panjang dan kemudian, menyalurkan daftar direktori ini ke perintah 'sort' untuk mencetak ukuran file dalam format yang dapat dibaca manusia, sehingga lebih mudah untuk mengidentifikasi file terbesar dan terkecil di direktori.

ls -l /home/$USER | sort -h -k5

17. Memeriksa Konsistensi File yang Diurutkan

Pada artikel sebelumnya, kami membuat dua file teks: 'sorted.txt' pada contoh nomor 4 dan 'lsl.txt' pada contoh nomor 6. Kami mengetahui bahwa ' sorted.txt' sudah diurutkan, sedangkan 'lsl.txt' belum.

Untuk memverifikasi status pengurutan kedua file, kami akan menggunakan perintah 'sort', yang memungkinkan kami mengonfirmasi apakah 'sorted.txt' tetap dalam urutan yang benar dan apakah 'lsl.txt' memerlukan penyortiran.

sort -c sorted.txt

Jika mengembalikan 0, berarti file sudah terurut dan tidak ada konflik.

sort -c lsl.txt

18. Menangani Pembatas Saat Tidak Menggunakan Spasi di File

Jika pembatas (pemisah) antar kata adalah spasi, perintah 'sort' secara otomatis menafsirkan apa pun setelah spasi horizontal sebagai kata baru. Namun apa jadinya jika pembatasnya bukan spasi?

Misalkan sebuah file teks, yang isinya dipisahkan oleh apa pun selain spasi seperti '|' atau '\' atau '+' atau '.' atau ...

Buat file teks yang isinya dipisahkan dengan +. Gunakan perintah cat untuk memeriksa isi file.

echo -e "21+linux+server+production\n11+debian+RedHat+CentOS\n131+Apache+Mysql+PHP\n7+Shell Scripting+python+perl\n111+postfix+exim+sendmail" > delimiter.txt
cat delimiter.txt

Sekarang urutkan file ini berdasarkan kolom 1 yang bersifat numerik.

sort -t '+' -nk1 delimiter.txt

Yang kedua didasarkan pada bidang ke-4 yang bersifat non-numerik.

Jika pembatasnya adalah Tab Anda dapat menggunakan $'\t' sebagai pengganti '+', seperti yang ditunjukkan pada contoh di atas.

19. Menyortir Output Secara Acak berdasarkan Ukuran File

Urutkan keluaran perintah ls -l untuk direktori home Anda berdasarkan kolom kelima, yang mewakili 'jumlah data', dalam urutan acak.

ls -l /home/avi/ | sort -k5 -R 

Setiap kali Anda menjalankan skrip di atas, kemungkinan besar Anda akan mendapatkan hasil yang berbeda karena hasilnya dihasilkan secara acak.

Seperti yang jelas dari Nomor aturan – 2 dari artikel terakhir, perintah sort lebih memilih baris yang dimulai dengan karakter huruf kecil daripada karakter huruf besar. Periksa juga contoh 3 pada artikel terakhir, di mana string ‘laptop‘ muncul sebelum string ‘LAPTOP‘.

20. Mengesampingkan Preferensi Penyortiran Default

Bagaimana cara mengganti preferensi penyortiran default? Sebelum kita dapat mengganti preferensi pengurutan default, kita perlu mengekspor variabel lingkungan 'LC_ALL' ke 'C'.

Untuk melakukan ini, jalankan kode di bawah ini pada prompt baris perintah Anda.

export LC_ALL=C

Lalu urutkan file teks 'tecmint.txt' dengan mengesampingkan preferensi pengurutan default.

sort tecmint.txt

Jangan lupa untuk membandingkan output dengan apa yang Anda capai pada contoh 3 dan Anda juga dapat menggunakan opsi '-f' alias '--ignore- case' untuk mendapatkan keluaran yang lebih terorganisir.

sort -f tecmint.txt

21. Menggabungkan Dua File Input dalam Satu Operasi

Bagaimana kalau menjalankan 'sort' pada dua file masukan dan menggabungkannya sekaligus?

Mari kita buat dua file teks, yaitu 'file1.txt' dan 'file2.txt', dan isi dengan beberapa data. Di 'file1.txt', kami akan menambahkan angka seperti yang ditunjukkan di bawah ini. Kami juga akan menggunakan perintah cat untuk memeriksa konten file

echo -e “5 Reliable\n2 Fast\n3 Secure\n1 open-source\n4 customizable” > file1.txt
cat file1.txt

Dan isi file kedua 'file2.txt' dengan beberapa data sebagai.

echo -e “3 RedHat\n1 Debian\n5 Ubuntu\n2 Kali\n4 Fedora” > file2.txt
cat file2.txt

Sekarang urutkan dan gabungkan output dari kedua file.

join <(sort -n file1.txt) <(sort file2.txt)

Kesimpulan

Sebagai kesimpulan, artikel ini telah mengeksplorasi berbagai aspek perintah ‘sort‘ di Linux. Kami mulai dengan penyortiran dasar berdasarkan urutan abjad, beralih ke penyortiran berdasarkan angka dan tanggal, dan bahkan menyentuh pembatas khusus. Kami juga mempelajari cara mengganti preferensi penyortiran default agar sesuai dengan kebutuhan kami.

Selain itu, kita membahas teknik untuk memeriksa apakah suatu file sudah diurutkan dan menggabungkan operasi 'sort' untuk beberapa file masukan. Dengan pengetahuan yang diperoleh di sini, Anda memiliki alat yang ampuh untuk menyortir dan mengatur data secara efisien di lingkungan Linux.

Kami harap artikel ini memberikan wawasan dan berguna untuk upaya baris perintah Anda. Teruslah menjelajah, mempelajari, dan menguasai seni 'sortir' untuk meningkatkan keterampilan Linux Anda.