数字で終わるファイルでls出力をソートする

数字で終わるファイルでls出力をソートする

これは私の一般的なコマンドの出力ですls

f1  f10  f11  f12  f13  f14  f15  f16  f17  f18  f19  f2  f20  f3  f4  f5  f6  f7  f8  f9

だから20のファイルがあります。次のように表示する必要があります。

f1  f2 f3  f4  f5  f6  f7  f8  f9 f10  f11  f12  f13  f14  f15  f16  f17  f18  f19  f20  

スクリプトに加えて、1行のコマンドはありますか?このような奇妙な状況を体験した方々もいらっしゃると確信しています。注:上記は単なる例です。実際のシナリオでは、すべてのファイル名を正しいソート順にリストする必要があります。 (範囲f{0..10000}

答え1

幸いにも! 1行のコマンドがあります

ls -lav

あなたが探していることをする必要があります

答え2

GNUでは、ls次のことができます。

ls -v

POSIXツールボックスの使用:

ls | sort -nk1.2 | paste -sd ' ' -

その範囲内のすべてのファイルが存在すると確信している場合シェルとサポート拡張を含む:

echo f{1..20}

そしてzsh

print -r -- f*(n)

関連情報