Coba ini:
ls -l | awk '{print $3, $4, $8}' | sort
Ini akan mencetak nama pengguna, nama grup dan nama file, asalkan nama file tidak mengandung spasi. Atau, Anda dapat mengetik:
ls -l | awk '{print $3, $4, $0}' | sort
Ini akan mencetak nama pengguna, nama grup dan ls -l
lengkap output, diurutkan berdasarkan nama pengguna terlebih dahulu, lalu nama grup, lalu ls -l
apa pun cetak terlebih dahulu.
Perhatikan bahwa bergantung pada distribusi Anda, nomor kolom yang sebenarnya mungkin berbeda. Saya mencoba milik saya di SUSE dan coreutils versi 5.2.1.
Mungkin ada solusi yang lebih baik dan lebih rumit, tetapi ini yang paling sederhana, dan akan sering berhasil.
Seperti kata petersohn, sesuatu yang mirip dengan:
ls -l | awk '{print $3, $4, $8, $0}' | sort | column -t
menambahkan$8
dancolumn -t
untuk cetakan cantik
Atau bahkan lebih baik:
ls -l | sort -k 3
- mengurutkan berdasarkan pemilik dan secara default mengurutkan bidang berikutnya (grup) dan seterusnyals -l | sort -k 4,4 -k 3
- mengurutkan berdasarkan grup dan kemudian berdasarkan pemilikls -l | sort -k 3,3 -k 8
- mengurutkan berdasarkan pemilik dan kemudian berdasarkan nama file
Catatan: koma adalah bidang terminator jadi 3,3
dimulai dan diakhiri pada kolom 3 3,5
mengurutkan dari bidang 3 hingga 5.