【发布时间】:2013-02-27 05:43:32
【问题描述】:
我在我的机器上使用 fedora 15。实际上,我正在尝试通过在整个文件系统中搜索来查找名称为 apache-tomcat-7.0.37 的文件夹
其实我在/opt/tomcat/路径中有一些类似下面的文件夹
apache-tomcat-7.0.37
apache-tomcat-6.0.34
apache-tomcat-7.0.67
.........
还有/usr/share/tomcat/的一些文件夹
apache-tomcat-4.0.7
apache-tomcat-6.0.4
apache-tomcat-8.0.6
.........
所以我想要的是使用命令从 linux 终端定位/查找/搜索所有这些文件夹路径。
我在 Google 上搜索了很多,得到了一些命令,例如 locate 和 find,如下所示
find / -name apache-tomcat*
locate apache-tomcat
上面的命令列出了所有的文件夹,包括额外不需要的文件夹信息,所以实际上我想要的是,只需要搜索名称为apache-tomcat-x.x.x,apache-tomcat-xx.xx.xx的文件夹
在文件夹名称中,起始词apache-tomcat 相同,只有整数部分(version number)发生变化。所以我想找到所有具有不同版本号的文件夹,比如使用正则表达式代替整数来查找文件夹
所以任何人都可以告诉我如何通过使用带有正则表达式的命令或类似的命令来搜索上述场景的文件夹,它可以找到所有名称为apache-tomcat-xx.x.xxx.....
【问题讨论】:
-
您是否考虑过使用
locate命令,然后将其输出传送到某个grep或awk? -
yup 得到了一些命令,比如 locate apache-tomcat | grep -E .... 但没有这样接近所以
标签: linux search command find locate