终端查找具有最新补丁号的文件

时间:2018-11-19 09:42:29

标签: bash shell command-line

我有一个文件夹,其中包含很多带有模式的补丁文件

1.1.hotfix1
1.2.hotfix2 
2.1.hotfix1
2.1.hotfix2 ...etc

并且我必须找出最新的补丁(2.1.hotfix2应该是示例的结果)

我该如何实现?

2 个答案:

答案 0 :(得分:2)

按时间对所有文件进行反向排序并打印第一行。

如果还有其他文件,则可以仅打印包含修补程序文本的文件。

ls -t1 *hotfix* |  head -n 1

答案 1 :(得分:1)

您可以将find与正则表达式一起使用,并从sort中获取最后一行:

find * -type f -regex "^[^\d]+\.[^\d]+\.hotfix[^\d]+$" | sort | tail -1