如果我运行svn list svn://repo.example.com/tags
,则列表为:
REL_1.9.0/
REL_1.9.1/
REL_1.9.10/
REL_1.9.11/
REL_1.9.12/
REL_1.9.13/
REL_1.9.14/
REL_1.9.15/
REL_1.9.16/
REL_1.9.2/
REL_1.9.3/
REL_1.9.4/
REL_1.9.5/
REL_1.9.6/
REL_1.9.7/
REL_1.9.8/
REL_1.9.9/
我想得到的是:
REL_1.9.0/
REL_1.9.1/
REL_1.9.2/
REL_1.9.3/
REL_1.9.4/
REL_1.9.5/
REL_1.9.6/
REL_1.9.7/
REL_1.9.8/
REL_1.9.9/
REL_1.9.10/
REL_1.9.11/
REL_1.9.12/
REL_1.9.13/
REL_1.9.14/
REL_1.9.15/
REL_1.9.16/
这样我就可以通过拖尾来获取最新的标签:svn ... | tail -1
如何按照创建日期而不是按字母顺序排序标记。
谢谢!
答案 0 :(得分:12)
我拥有的sort
版本(cygwin)有此选项
-V, --version-sort natural sort of (version) numbers within text
$ cat test.txt | sort -V REL_1.9.0/ REL_1.9.1/ REL_1.9.2/ REL_1.9.3/ REL_1.9.4/ REL_1.9.5/ REL_1.9.6/ REL_1.9.7/ REL_1.9.8/ REL_1.9.9/ REL_1.9.10/ REL_1.9.11/ REL_1.9.12/ REL_1.9.13/ REL_1.9.14/ REL_1.9.15/ REL_1.9.16/
所以试试svn list ... | sort -V | tail -1