Linux提供了不同的查找目录的方法。在这里,我们将研究如何以递归方式查找目录。在本教程中,我们将使用以下命令 find
和 locate
.
null
使用Find命令查找目录和文件
Find命令是一个流行的命令,用于查找文件和目录、备份、复制文件等许多不同的用途。实际上,find没有这些功能,它只是在搜索结果上运行命令,比如copy和backup。
语法
find LOCATION SEARCH_TERM ACTION
- `LOCATION`是我们要搜索的路径或位置
- `SEARCHu TERM`是要搜索的文件或目录名
- `ACTION`是可选的,可以在搜索结果中执行诸如打印、删除、重命名等操作
我们将在根文件系统中搜索一个目录bin。
$ find / -name bin
获取有关目录和文件的详细信息
我们可以使用 -长征 find命令的参数。
$ find / -name bin -ls
这里的结果将列出目录的大小,目录的权限,所有者,最后更改日期等。
仅列出目录
到目前为止,我们已经搜索了所有的文件和目录。通过提供带有目录说明符的类型参数,我们只能搜索目录。
$ find / -name bin -ls -type d
定位
Locate命令是find命令的非交互式替代方法。此外,他们的能力有限。locate命令的优点是速度快,因为locate使用数据库进行搜索。手动创建文件和目录的数据库。手动更新此数据库。搜索直接在这个数据库中完成。数据库位于 /var/lib/mlocate/mlocate.db
.
我们将用locate命令更新数据库以进行搜索。要更新定位数据库,我们需要根权限。
$ sudo updatedb
我们将搜索以结尾的文件和目录 /bin
. 在本例中,我们将使用locate的regex选项来指定行的结尾。
$ locate --regex /bin$
相关文章: 如何创建不区分大小写的正则表达式?
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END