Linux中,可使用
find
命令搜索目录下文件夹,如find /path -type d -name "folder_name"
Linux系统中,搜索目录下的文件夹有多种方法,以下是详细介绍:
使用find命令(精准搜索)
语法 | 说明 | 示例 |
---|---|---|
find [搜索路径] -type d [选项] |
-type d 表示仅搜索目录。 |
find . -type d :搜索当前目录及其子目录下的所有文件夹。 |
-name "文件夹名" |
按名称精确匹配。 | find / -type d -name "nginx" :搜索全系统名为“nginx”的文件夹(需root权限)。 |
-iname "关键字" |
模糊匹配,忽略大小写。 | find /var -type d -iname "log" :搜索/var 目录下名称包含“log”的文件夹。 |
-mtime -7 |
修改时间在7天内。 | find ~ -type d -mtime -7 :搜索家目录下7天内修改过的文件夹。 |
-empty |
搜索空文件夹。 | find . -type d -empty :搜索当前目录下的空文件夹。 |
-perm 755 |
按权限筛选。 | find /etc -type d -name "config" -perm 755 :搜索/etc 下名为“config”且权限为755的文件夹。 |
使用locate命令(快速搜索)
语法 | 说明 | 示例 |
---|---|---|
locate 文件夹名 |
基于数据库索引快速搜索,需先更新数据库。 | locate nginx :搜索名称包含“nginx”的文件夹。 |
sudo updatedb |
手动更新数据库(每日自动更新)。 | 新建文件夹后,需执行此命令才能被locate 搜索到。 |
其他方法
方法 | 语法 | 适用场景 |
---|---|---|
ls -d / |
列出当前目录下的文件夹。 | 仅显示当前目录的文件夹,不递归。 |
ls -d ./example/ |
配合通配符模糊匹配。 | 列出当前目录及子目录下以“example”开头的文件夹。 |
tree -d . | grep "关键字" |
以树状结构显示目录,结合grep 筛选。 |
需安装tree 命令,适合查看目录层级。 |
fd myfolder -t d |
现代化find 替代工具,支持彩色输出和正则表达式。 |
需安装fd ,语法更简洁。 |
FAQs
为什么locate
命令找不到新创建的文件夹?locate
依赖数据库索引,默认每天自动更新一次,若需立即搜索最新文件,需手动执行sudo updatedb
更新数据库,或使用find
命令。
如何搜索特定权限的文件夹?
使用find
命令的-perm
选项,find /path -type d -perm 755
此命令会搜索指定路径下权限为755的文件夹
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/71367.html