想在shell脚本中比较版本号(例如2.3.1等),一开始想自己写,结果发现sort命令本身就有这个功能。
sor命令可以设置比较方式,如下:
--sort=WORD
sort according to WORD: general-numeric -g, human-numeric -h, month -M, numeric -n, random -R, version -V
-V, --version-sort
natural sort of (version) numbers within text
--sort选项可以用来设置各种比较方式,其中-V选项就是用来比较版本号的。
例如文件中的内容如下:
2.5.1
2.5.1.8
2.3.11
使用sort命令进行排序:
sort -V version.txt
结果如下:
2.3.11
2.5.1
2.5.1.8