GNU/Linux >> Belajar Linux >  >> Linux

Menyortir dalam bash

Gunakan:

cut -f <col_num> <filename>
    | sort 
    | uniq -c
    | sort -r -k1 -n
    | awk '{print $2" "$1}'

sort -r -k1 -n mengurutkan dalam urutan terbalik, menggunakan kolom pertama sebagai nilai numerik. awk cukup membalik urutan kolom. Anda dapat menguji perintah pipa yang ditambahkan demikian (dengan pemformatan yang lebih bagus):

pax> echo '105 Linux
55  MacOS
500 Windows' | sort -r -k1 -n | awk '{printf "%-10s %5d\n",$2,$1}'
Windows      500
Linux        105
MacOS         55

Milik saya:

cut -f <column_number> <filename> | sort | uniq -c | awk '{ print $2" "$1}' | sort

Ini akan mengubah urutan kolom (awk) dan kemudian hanya mengurutkan hasilnya.

Semoga ini bisa membantu Anda


Linux
  1. Menyortir banyak kunci dengan pengurutan Unix

  2. Menyortir file yang dibatasi tab

  3. Menyortir pada bidang terakhir dari suatu baris

  1. Menyortir angka dengan banyak desimal di bash

  2. Menyortir ukuran file yang dapat dibaca manusia

  3. find perintah urutan penyortiran default

  1. Variabel Ekspor Bash

  2. Perintah tunggu bash

  3. Skrip bash(I)