Apakah mungkin untuk melihat hasil ini diurutkan dengan titlepage_1.pdf sebelum titlepage_19.pdf?
$ ls
allTitlepage.pdf titlepage_12.pdf titlepage_19.tex titlepage_26.pdf titlepage_32.tex titlepage_4.tex
allTitlepage.tex titlepage_12.tex titlepage_1.pdf titlepage_26.tex titlepage_33.pdf titlepage_5.pdf
assignment.pdf titlepage_13.pdf titlepage_1.tex titlepage_27.pdf titlepage_34.pdf titlepage_5.tex
assignment.tex titlepage_13.tex titlepage_20.pdf titlepage_27.tex titlepage_34.tex titlepage_6.pdf
graphicsAssignment2.pdf titlepage_14.pdf titlepage_20.tex titlepage_28.pdf titlepage_35.pdf titlepage_6.tex
graphicsAssignment2.tex titlepage_14.tex titlepage_21.pdf titlepage_28.tex titlepage_35.tex titlepage_7.pdf
README.md titlepage_15.pdf titlepage_21.tex titlepage_29.pdf titlepage_36.pdf titlepage_7.tex
thesisTitlepage.pdf titlepage_15.tex titlepage_22.pdf titlepage_29.tex titlepage_36.tex titlepage_8.pdf
thesisTitlepage.tex titlepage_16.pdf titlepage_22.tex titlepage_2.pdf titlepage_37.pdf titlepage_8.tex
titlepage_0.pdf titlepage_16.tex titlepage_23.pdf titlepage_2.tex titlepage_37.tex titlepage_9.pdf
titlepage_0.tex titlepage_17.pdf titlepage_23.tex titlepage_30.pdf titlepage_38.pdf titlepage_9.tex
titlepage_10.pdf titlepage_17.tex titlepage_24.pdf titlepage_30.tex titlepage_38.tex titlepage_one.pdf
titlepage_10.tex titlepage_18.pdf titlepage_24.tex titlepage_31.pdf titlepage_3.pdf titlepage_one.tex
titlepage_11.pdf titlepage_18.tex titlepage_25.pdf titlepage_31.tex titlepage_3.tex titlepage_two.tex
titlepage_11.tex titlepage_19.pdf titlepage_25.tex titlepage_32.pdf titlepage_4.pdf
command-line
ls
alhelal
sumber
sumber
Jawaban:
Gunakan switch -v [nomor urut alami (versi) dalam teks]
sumber
Outputnya diurutkan. Menurut halaman
ls
manual:Tetapi jika Anda ingin melangkah lebih jauh, Anda memiliki setidaknya dua opsi:
Opsi 1 -
ls
sortir sakelarman ls
memberi tahu Anda tentang sejumlah sakelar yang dapat Anda gunakan untuk mengurutkan, khususnya, halaman manual mengatakan:Dalam kasus Anda, Anda ingin sortir "versi" (-v). Berhati-hatilah, karena ini juga akan mengurutkan apa pun yang memiliki
blahblah-X.Y.Z-A
pengaturan yang mungkin tidak sepenuhnya seperti yang Anda inginkan. Lihat juga penjelasan GNU tentang pengurutan versi .Opsi 2 - Pipa untuk menyortir perintah
Anda bisa menggunakan pipa
|
untuk mengirim output ke perintah lain, misalnya perintahsort
yang bisa Anda gunakan untuk mengurutkan dalam beberapa cara lain, sepertils -1 | sort -n
yang berguna jika Anda memiliki file bernomor. The-1
beralih memastikan bahwa output adalah satu-line-per-file.Sama, Anda dapat memanipulasi output untuk membantu menyortir dengan menggunakan hal-hal seperti
sed
atauawk
.Ada banyak cara untuk menjawab pertanyaan semacam ini. Anda dapat menemukan tutorial shell linux bermanfaat.
* (Lihat apa yang saya lakukan di sana? :-P)
sumber
Seperti telah ditunjukkan dalam komentar, output yang sudah diurutkan, tetapi dengan karakter, bukan angka. Anda mungkin ingin menyalurkan output
ls
melaluisort
yang memiliki saklar untuk mengurutkan berdasarkan angka dalam string:Dari halaman manual :
Kelemahan: Ketika kami mengeluarkannya,
ls
maka output file dalam tabel dengan kolom sebanyak yang sesuai pada layar saat ini (seperti yang Anda tunjukkan di posting Anda). Tetapi ketikals
pemberitahuan bahwa outputnya dialihkan ke file atau ke pipa (seperti dalamls | sort
) kemudianls
mencetak file hanya dalam satu kolom karena kemudian mengasumsikan output akan diproses baris demi baris (alias file demi file) oleh beberapa program lain (sepertisort
). Jadi outputls | sort -V
akan berada dalam satu kolom, bukan dalam tabel dengan beberapa kolom. Lihat @vijay sederhana 's namun jawaban yang sempurna untuk bagaimana untuk menghindari itu.sumber
column
ls -l
: daftar file direktori secara vertikal tetapi tidak dalam urutan tertentu.ls -l | sort -k 3
:-k 3
akan mengurutkan output dari perintah sebelumnya dengan kolom ke-3.sumber