Cara Mengurutkan Data Dalam File Menggunakan Linux

Pengenalan

Dalam panduan ini, saya akan menunjukkan kepada anda cara mengisih data dalam fail terhad dan daripada output arahan lain.

Anda tidak akan terkejut mengetahui bahawa arahan yang anda gunakan untuk melaksanakan tugas ini dipanggil "semak". Semua suis utama arahan jenis akan disediakan dalam artikel ini.

Contoh Data

Data dalam fail boleh disusun selagi ia dibatasi dalam beberapa cara.

Sebagai contoh, mari kita ambil jadual liga akhir dari Liga Perdana Scotland tahun lalu dan simpan data dalam fail yang dipanggil "spl".

Anda boleh membuat fail data seperti berikut dengan satu kelab dan data untuk kelab itu dipisahkan oleh koma pada setiap baris.

Pasukan Matlamat dijaringkan Matlamat Terhadap Mata
Celtic 93 31 86
Aberdeen 62 48 71
Hati 59 40 65
St Johnstone 58 55 56
Motherwell 47 63 50
Ross County 55 61 48
Inverness 54 48 52
Dundee 53 57 48
Partick 41 50 46
Hamilton 42 63 43
Kilmarnock 41 64 36
Dundee United 45 70 28

Cara Menyusun Data Dalam Fail

Dari jadual itu, anda dapat melihat bahawa Celtic memenangi liga dan Dundee United datang terakhir. Jika anda seorang peminat Dundee United, anda mungkin mahu membuat diri anda berasa lebih baik dan anda boleh melakukan ini dengan menyusun gol yang dicetak.

Untuk melakukan ini jalankan perintah berikut:

sort -k2-t, spl

Kali ini pesanan itu adalah seperti berikut:

Alasan keputusan dalam urutan ini adalah bahawa lajur 2 adalah matlamat menjaringkan lajur dan jenisnya bermula dari terendah hingga tertinggi.

Switch -k membolehkan anda memilih lajur untuk menyusun mengikut dan suis -t membolehkan anda memilih pemisah.

Untuk menjadikan diri mereka sangat gembira peminat Dundee United boleh disusun mengikut lajur 4 menggunakan arahan berikut:

sort -k4-t, spl

Sekarang Dundee United berada di puncak dan Celtic berada di bahagian bawah.

Sudah tentu, ini akan menjadikan kedua-dua peminat Celtic dan Dundee sangat tidak berpuas hati. Untuk meletakkan perkara dengan betul anda boleh menyusun dalam urutan terbalik menggunakan suis berikut:

sort -k4 -t, -r spl

Suis yang agak pelik membolehkan anda menyusun secara rawak yang benar-benar hanya merapatkan baris data.

Anda boleh melakukan ini dengan menggunakan arahan berikut:

jenis -k4-t, -R spl

Ini boleh menyebabkan masalah sebenar jika anda bercampur-r dan -R anda.

Perintah semacam itu juga boleh menyusun tarikh ke dalam susunan bulan. Untuk menunjukkan melihat jadual berikut:

Bulan Data Digunakan
Januari 4G
Februari 3000K
Mac 6000K
April 100M
Mungkin 5000M
Jun 200K
Julai 4000K
Ogos 2500K
September 3000K
Oktober 1000K
November 3G
Disember 2G

Jadual di atas mewakili bulan tahun dan jumlah data yang digunakan pada peranti mudah alih.

Anda boleh menyusun tarikh mengikut abjad menggunakan arahan berikut:

sort -k1 -t, datausedlist

Anda juga boleh menyusun mengikut bulan menggunakan arahan berikut:

sort -k1 -t, -M data terpakai

Sekarang jelas jadual di atas sudah menunjukkan mereka dalam susunan bulan tetapi jika senarai itu secara rawak dihuni maka ini akan menjadi cara mudah untuk menyusunnya.

Melihat lajur kedua, anda dapat melihat bahawa semua nilai berada dalam format yang boleh dibaca manusia yang tidak kelihatan seperti mudah untuk disusun tetapi perintah sort dapat menyusun lajur data yang digunakan dengan menggunakan perintah berikut:

sort -k2 -t, -h datausedlistlist

Cara Susun Data Dihantar Daripada Perintah Lain

Walaupun menyusun data dalam fail berguna, arahan jenis juga boleh digunakan untuk menyusun output daripada arahan lain:

Contohnya lihat arahan ls :

ls -lt

Perintah di atas mengembalikan setiap fail sebagai satu baris data dengan medan berikut dipaparkan dalam lajur:

Anda boleh menyusun senarai mengikut saiz fail dengan menjalankan arahan berikut:

ls -lt | sort -k5

Untuk mendapatkan keputusan dalam urutan terbalik, anda akan menggunakan arahan berikut:

ls -lt | sort -k5 -r

Perintah jenis ini juga boleh digunakan bersama dengan perintah ps yang menyenaraikan proses yang berjalan pada sistem anda.

Misalnya jalankan perintah ps berikut pada sistem anda:

ps -eF

Perintah di atas mengembalikan banyak maklumat mengenai proses yang sedang dijalankan pada sistem anda.

Salah satu tiang itu adalah saiz dan anda mungkin mahu melihat proses mana yang terbesar.

Untuk menyusun data ini mengikut saiz, anda akan menggunakan arahan berikut:

ps -eF | sort -k5

Ringkasan

Tidak banyak perintah semacam itu tetapi ia boleh menjadi berguna dengan sangat cepat apabila menyusun output dari perintah-perintah lain ke dalam perintah yang bermakna terutama apabila perintah itu tidak mempunyai suis jenisnya sendiri.

Untuk maklumat lanjut, baca halaman manual untuk arahan jenis.