Bagaimana saya bisa mendaftar direktori dengan ls dan mengurutkannya menurut pemilik dan grup mereka?
9
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
output penuh , diurutkan berdasarkan nama pengguna terlebih dahulu, lalu nama grup, lalu apa pun yang ls -l
dicetak terlebih dahulu.
Perhatikan bahwa tergantung 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, lebih rumit, tetapi ini adalah yang paling sederhana, dan akan bekerja sebagian besar waktu.
Seperti yang dikatakan petersohn, sesuatu yang mirip dengan:
ls -l | awk '{print $3, $4, $8, $0}' | sort | column -t
menambahkan
$8
dancolumn -t
untuk cetak cantikAtau lebih baik lagi:
ls -l | sort -k 3
- mengurutkan menurut pemilik dan secara default mengurutkan bidang berikutnya (grup) danls -l | sort -k 4,4 -k 3
- mengurutkan berdasarkan kelompok dan kemudian oleh pemilikls -l | sort -k 3,3 -k 8
- macam oleh pemilik dan kemudian dengan nama fileCatatan: koma adalah bidang terminator sehingga
3,3
dimulai dan diakhiri di bidang 33,5
jenis dari bidang 3 hingga 5.sumber