ソートコマンドでVオプションを使用する方法

ソートコマンドでVオプションを使用する方法

ls -1 | grep war | sort -V | tail -n1次のwarファイル名をソートして一覧表示するコマンドがあります。abc-1.4.3.12.war

ソートコマンドでVオプションの用途は何ですか?

答え1

https://www.gnu.org/software/coreutils/manual/html_node/sort-inspiration.html

'-V'
'--バージョンの並べ替え'

バージョン名と番号でソートします。各10進数シーケンスがインデックス/バージョン番号で数値的に処理されることを除いて、標準のソートのように機能します。 (望むよりバージョンソートの詳細.)

例:

標準ソート:

$ printf '%s\n' abc-1.4.3.12.war abc-12.1.war abc-1.11.war | sort
abc-1.11.war
abc-12.1.war
abc-1.4.3.12.war

バージョン別に並べ替え:

$ printf '%s\n' abc-1.4.3.12.war abc-12.1.war abc-1.11.war | sort -V
abc-1.4.3.12.war
abc-1.11.war
abc-12.1.war

ただし、ここではおよびを使用せずに-vオプションを使用することもできます。lsgrepsort:

$ touch abc-1.4.3.12.war abc-12.1.war abc-1.11.war
$ ls -1 *war
abc-1.11.war
abc-12.1.war
abc-1.4.3.12.war
$ ls -1v *war
abc-1.4.3.12.war
abc-1.11.war
abc-12.1.war

答え2

男の種類が言う

   -V, --version-sort
          natural sort of (version) numbers within text

https://stackoverflow.com/questions/4493205/unix-sort-of-version-numbers

関連情報