GNU/Linux >> Belajar Linux >  >> Linux

Menyortir file yang dibatasi tab

Anda perlu meletakkan karakter tab yang sebenarnya setelah -t\ dan untuk melakukannya di shell Anda menekan ctrl-v dan kemudian karakter tab. Kebanyakan shell yang saya gunakan mendukung mode entri tab literal ini.

Namun berhati-hatilah, karena menyalin dan menempel dari tempat lain biasanya tidak mempertahankan tab.


Secara default pembatas bidang adalah transisi non-kosong ke kosong sehingga tab seharusnya berfungsi dengan baik.

Namun, kolom diindeks basis 1 dan basis 0 sehingga Anda mungkin ingin

sort -k4nr file.txt

untuk mengurutkan file.txt berdasarkan kolom 4 secara numerik dalam urutan terbalik. (Padahal data dalam pertanyaan bahkan memiliki 5 bidang sehingga bidang terakhir adalah indeks 5.)


Solusi $ tidak bekerja untuk saya. Namun, Dengan benar-benar menempatkan karakter tab itu sendiri dalam perintah did:sort -t'' -k2


Menggunakan bash , ini akan berhasil:

$ sort -t$'\t' -k3 -nr file.txt

Perhatikan tanda dolar di depan string yang dikutip tunggal. Anda dapat membacanya di bagian Mengutip ANSI-C di bash halaman manual.


Linux
  1. Menggunakan Uniq Pada Teks Unicode?

  2. Urutkan Bagian Dari File?

  3. urutkan Contoh Perintah di Linux

  1. urutkan:perintah tidak ditemukan

  2. Menyortir pada bidang terakhir dari suatu baris

  3. Linux mengurutkan file shell menurut kolom kedua?

  1. Cara mengurutkan file di tempat

  2. Menyortir ukuran file yang dapat dibaca manusia

  3. cp -L vs cp -H