当前位置:首页>Linux>locate 命令完全指南:Linux文件查找的极速引擎

locate 命令完全指南:Linux文件查找的极速引擎

  • 2026-08-22 09:10:49
locate 命令完全指南:Linux文件查找的极速引擎

locate 命令完全指南

Linux文件查找的极速引擎 | 从原理到实战的全面解析

💡 导读:在Linux系统中查找文件,find是大家耳熟能详的命令,但它需要遍历整个文件系统,速度较慢。而另一个鲜为人知却快如闪电的命令——locate,则通过预建数据库的方式实现毫秒级文件查找。本文将带你深入理解 locate 的工作原理、核心参数、实战技巧以及与 find 命令的对比,让你在日常运维和开发中游刃有余。

📋 本文目录

 一、命令简介与发展历史 二、基本语法详解 三、核心参数大全 四、数据库工作原理深度剖析 五、基础实战案例 六、进阶使用技巧 七、正则表达式高级匹配 八、性能优化与注意事项 九、同类命令对比(find/grep/which) 十、实战场景演练 十一、总结与速查表 

一、命令简介与发展历史

locate 是 GNU findutils 工具包中的一个核心组件,与 find 同源。它的设计哲学是:与其每次搜索时遍历整个文件系统,不如预先构建一个文件路径索引数据库,搜索时直接查询数据库即可。这种"以空间换时间"的设计哲学,让 locate 在绝大多数场景下比 find 快 100 倍以上。

locate 的历史可以追溯到 1980 年代的 BSD 系统,最初由 James A. Woods 实现。在 GNU/Linux 生态中,目前最主流的实现是 mlocate(Merging Locate),它继承了原始 locate 的所有特性,并引入了"合并"机制——多个用户可以共享同一个数据库,同时支持权限过滤(默认情况下用户只能看到自己有读权限的文件路径)。

locate 的核心设计理念可以概括为三点:

设计理念
具体实现
带来的优势
预建索引
使用 mlocate.db 数据库缓存文件路径
查询速度提升百倍
后台更新
通过 cron 每日自动运行 updatedb
无人工干预自动维护
权限隔离
数据库按用户权限过滤可见路径
安全性更高

二、基本语法详解

# 基本语法 locate [OPTIONS] PATTERN...# 常见用法 locate filename              # 查找包含 filename 的所有路径 locate -i filename           # 不区分大小写查找 locate -c keyword            # 统计匹配数量而非列出文件 locate -l 10 keyword         # 限制只显示前 10 条结果 locate -r '\.log$'           # 使用正则表达式匹配

从语法上看,locate 比 find 简洁得多——它没有 find 那种复杂的多层表达式结构。locate 的工作流程也非常直接:接收一个或多个 PATTERN 参数,从数据库中查询匹配的路径,将结果输出。默认情况下,PATTERN 是文件名或路径中包含的子串(子串匹配而非全词匹配),这意味着 locate pass 会同时匹配到 passwdpassword/usr/bin/passwd 等所有包含"pass"子串的路径。

值得注意的是,locate 默认采用模糊匹配策略。如果你想精确匹配文件名,需要使用 -b(basename,仅匹配文件名)或 -r(regex,正则表达式)参数,这一点对于初学者来说非常容易混淆。

三、核心参数大全

locate 提供了丰富的参数选项,按功能可分为以下几类:

3.1 匹配控制参数

参数
长选项
说明
示例
-i
--ignore-case
忽略大小写
locate -i readme
-b
--basename
仅匹配文件名部分
locate -b passwd
-l N
--limit=N
限制输出条数
locate -l 50 txt
-c
--count
只输出匹配数量
locate -c log
-r
--regexp
使用正则表达式
locate -r '^/etc/.*\.conf$'
-w
--wholename
匹配完整路径(默认)
locate -w /var/log

3.2 输出控制参数

参数
说明
使用场景
-0
使用 NUL 分隔输出
配合 xargs -0 安全处理含空格文件名
-q
静默模式(不显示错误)
脚本中调用
-e
仅显示当前存在的文件
排除已被删除的文件
-P
不检查文件存在性(默认)
追求最快速度
-A, -B, -C
显示匹配行附近内容
需要上下文时使用

3.3 数据库参数

参数
说明
使用场景
-d PATH
指定数据库文件
使用自定义数据库
-s
显示数据库统计信息
查看数据库状态
-S
同 -s
同 -s

四、数据库工作原理深度剖析

理解 locate 的工作原理,是熟练运用它的前提。locate 并不会实时扫描文件系统,而是依赖一个预构建的索引数据库——/var/lib/mlocate/mlocate.db。这个数据库通常由 updatedb 命令生成,并通过 cron 定时任务每天自动更新。

数据库的更新机制如下:

# 手动更新数据库 sudo updatedb# 查看数据库统计信息 locate -S# 查看 cron 任务配置 cat /etc/cron.daily/mlocate ls -la /etc/cron.daily/ | grep locate# 查看数据库文件大小 ls -lh /var/lib/mlocate/mlocate.db

updatedb 工具会遍历整个文件系统,读取每个文件/目录的路径信息,并将它们写入数据库。整个更新过程在大型服务器上可能需要数分钟,但因为是后台运行,对前台操作几乎无感知。数据库文件本质上是一个经过压缩的纯文本文件,每行包含一个文件路径。

这种设计的精妙之处在于:locate 查询时无需访问磁盘上的 inode 元数据,也无需打开文件目录,只需在内存中对数据库进行字符串匹配即可。这就是为什么在千万级文件的服务器上,locate 也能在毫秒级返回结果——而 find 可能需要数秒甚至数分钟。

⚠️ 重要提示:由于依赖数据库,locate 无法查找到新建的文件。例如,你刚刚用 touch newfile.txt 创建了一个文件,但立刻用 locate newfile.txt 查找,很可能会找不到。解决方案有两种:1) 等待定时任务自动更新(通常次日);2) 手动执行 sudo updatedb 立即更新数据库。

五、基础实战案例

案例 1:最简单的文件查找

# 查找所有包含 passwd 的文件路径 locate passwd# 输出可能类似: /etc/passwd /etc/passwd- /usr/bin/passwd /usr/share/doc/passwd /usr/share/man/man1/passwd.1.gz

这是 locate 最基础的用法。注意它会匹配路径中任何位置包含 "passwd" 的文件,包括路径中的目录名(如 /usr/share/man/man1)。

案例 2:忽略大小写查找

# 不区分大小写查找 README 文件 locate -i readme# 这会同时匹配: /home/user/README.md /home/user/readme.txt /var/www/README /opt/project/Readme

在不知道文件确切大小写时,-i 参数非常实用。在 macOS 等区分大小写的文件系统中,这个参数几乎是必备的。

案例 3:只匹配文件名(basename 模式)

# 仅匹配文件名是 passwd 的文件,不匹配路径中含 passwd 的目录 locate -b passwd# 配合 -e 确保文件确实存在 locate -b -e '\.conf$' /etc/# 注意:-b 默认是子串匹配,要用 -x 实现完全匹配 locate -x -b passwd   # 仅匹配文件名完全等于 "passwd" 的文件

这个例子展示了 locate 几个易混淆参数的组合用法。-b 让匹配范围缩小到文件名部分,-x 则要求完全匹配(不能是子串),-e 保证返回的文件当前确实存在。组合使用可以构建出非常精确的查询条件。

案例 4:限制输出数量

# 仅显示前 10 个匹配结果 locate -l 10 .log# 当结果非常多时,先用 -c 查看总数 locate -c .log# 配合 head 也能达到类似效果,但 -l 更高效 locate .log | head -10

当系统中有海量匹配项时,-l 参数可以避免输出过载。先用 -c 统计总数,再决定是否需要分页,是处理大规模数据的最佳实践。

案例 5:使用正则表达式

# 查找所有 .conf 结尾的文件 locate -r '\.conf$'# 查找 /var/log 下的 .gz 压缩日志 locate -r '^/var/log/.*\.gz$'# 查找特定年份的备份文件 locate -r 'backup-202[0-5]-.*\.tar\.gz$'# 查找主目录下所有隐藏文件 locate -r '/\.[^/]+$' | grep "^/home/"

-r 参数让 locate 切换到正则表达式模式,支持完整的 POSIX BRE 语法。引号在 shell 中必不可少,否则特殊字符会被 shell 解析。正则模式下,^ 匹配路径开头,$ 匹配路径结尾,. 匹配任意单字符,* 表示零次或多次重复。

六、进阶使用技巧

技巧 1:与 xargs 配合批量处理

# 查找所有空文件并删除(危险操作,请先确认) locate -0 empty | xargs -0 -I {} ls -la {}# 批量修改权限 locate -0 .sh | xargs -0 chmod +x# 批量查看文件大小 locate -0 .log | xargs -0 du -sh | sort -h | tail -20

使用 -0(NUL 分隔)配合 xargs -0 是处理含空格、换行符等特殊字符文件名的安全方式。这比默认的换行分隔更可靠,避免文件名被误切分。

技巧 2:与 grep 组合做内容筛选

# 查找 Python 文件,并按大小排序 locate -0 .py | xargs -0 ls -la 2>/dev/null | sort -k5 -n | tail -20# 查找今天创建的文件 locate .log | xargs ls -la 2>/dev/null | grep "Aug  2"# 统计每种文件类型的数量 locate / | grep -oE '\.[a-z]+$' | sort | uniq -c | sort -rn | head -20

locate 负责快速定位路径,grep/sort/uniq 负责进一步加工,这种"分工协作"的模式是 Unix 哲学的完美体现。

技巧 3:多模式组合查询

# 同时查找多个文件类型 locate .conf .cfg .ini# 上述命令等价于 locate .conf locate .cfg locate .ini | sort -u

locate 支持同时传入多个 PATTERN,结果会合并输出。这对于批量查找不同扩展名的配置文件特别有用。

技巧 4:使用数据库统计排查系统

# 查看数据库基本信息 locate -S# 输出示例: Database /var/lib/mlocate/mlocate.db         3.1 MB (100%, 12 MB available)         234,567 files         18,901 directories         Last update: 2026-08-02 03:15:22

通过 -S 可以快速了解系统文件规模、数据库更新时间等信息。如果"Last update"显示很久以前,说明 cron 任务可能没正常执行,需要排查。

技巧 5:自定义 updatedb 扫描范围

# 编辑 updatedb 配置 cat /etc/updatedb.conf# 典型配置: PRUNE_BIND_MOUNTS = "yes" PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fusectl gfs gfs2 gpfs hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs shfs smbfs sockfs sysfs tmpfs ubifs udf usbfs" PRUNENAMES = ".git .hg .svn .bzr .arch-ids {arch} .arch-inventory .arch-ids.txt .noarch" PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache /var/lib/php/sessions /var/spool/cron /var/spool/squid /var/tmp"

通过 /etc/updatedb.conf 可以精细控制 updatedb 的扫描行为。合理设置 PRUNEPATHS 可以显著缩小数据库体积,提升查询速度,并避免将临时文件、媒体挂载点等不需要索引的目录加入数据库。

七、正则表达式高级匹配

locate 的 -r 参数支持完整的 POSIX BRE(Basic Regular Expression)语法。下面是常用元字符速查:

元字符
含义
示例
说明
.
匹配任意单字符
a.c
匹配 abc、a1c 等
^
匹配路径开头
^/etc/
仅匹配 /etc/ 下文件
$
匹配路径结尾
\.log$
匹配所有 .log 文件
*
前一项零次或多次
ab*c
匹配 ac、abc、abbc
[ ]
字符类
[0-9]
匹配单个数字
[^ ]
否定字符类
[^a-z]
非小写字母
\{n\}
精确重复 n 次
[0-9]\{3\}
匹配 3 位数字
\( \)
分组(BRE 需转义)
\(ab\)+
ab 重复一次或多次

几个实用的正则组合示例:

# 查找特定扩展名的备份文件 locate -r '\.(bak|backup|~)$'# 查找 IP 地址格式命名的文件 locate -r '/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'# 查找版本号风格的目录 locate -r '/v[0-9]\+\(\.[0-9]\+\)\{1,\}/'

⚡ 性能提示:locate 的正则匹配是对数据库中每行字符串进行遍历,在千万级文件系统中过于复杂的正则可能导致查询变慢。建议先用 -c 估算结果数量,再决定是否需要进一步优化查询条件。

八、性能优化与注意事项

8.1 性能优势量化

在典型的大型服务器上,locate 与 find 的性能差异可以达到 50-1000 倍:

# 性能对比测试(典型百万级文件系统)# find 方式 - 需要遍历整个文件系统 time find / -name "*.log" 2>/dev/null# 实际执行: 12.345 seconds# locate 方式 - 直接查询数据库 time locate "*.log"# 实际执行: 0.023 seconds# 性能差距约 500 倍

8.2 常见误区与注意事项

⚠️ 误区 1:locate 找不到新创建的文件 locate 依赖预建数据库,新建文件不会立即出现在结果中。解决方案:等待自动更新或手动执行 sudo updatedb

⚠️ 误区 2:locate 会查找到已删除的文件 默认情况下,locate 会列出数据库中的所有路径,包括已经被删除的文件。使用 -e 参数可以过滤掉不存在的文件,但这会增加 I/O 开销。

⚠️ 误区 3:locate 的通配符是 shell 展开而非命令处理locate *.log 中的 * 会被 shell 展开为当前目录的文件名。要在命令层面使用通配符,必须用引号或 -r 正则模式。

8.3 数据库维护最佳实践

# 1. 合理配置 PRUNEPATHS# 编辑 /etc/updatedb.conf,添加不需要索引的路径 PRUNEPATHS="/afs /media /mnt /net /sfs /tmp /var/cache /var/tmp"# 2. 在生产环境中限制 PRUNE_BIND_MOUNTS PRUNE_BIND_MOUNTS="yes"   # 不索引 bind mount 内容# 3. 调整 cron 调度时间# 默认是每天凌晨运行,可以根据业务调整 sudo crontab -e 0 3 * * * /usr/bin/updatedb# 4. 监控数据库大小 locate -S | head -3

九、同类命令对比

在 Linux 生态中,有多个命令可以实现文件查找功能。下表从多个维度对比 locate、find、which、whereis:

对比维度
locate
find
which
whereis
数据源
预建数据库
实时扫描
$PATH 环境变量
固定目录
速度
极快(毫秒级)
慢(秒~分钟级)
实时性
差(依赖更新)
实时
实时
准实时
匹配范围
全系统文件名
可指定任意目录
PATH 中可执行文件
二进制、源码、man
条件筛选
仅路径/正则
大小、时间、权限等
仅名称
类别
可执行操作
仅查询
可执行任意命令
仅查询
仅查询
典型用途
快速找文件位置
复杂条件搜索
查命令绝对路径
查程序相关文件

从对比可以看出,locate 在速度上具有压倒性优势,但牺牲了实时性和灵活性。在实际工作中,常见的最佳实践是:

# 1. 已知文件名,找路径 → 优先用 locate locate nginx.conf# 2. 需要复杂条件(大小、时间、权限)→ 用 find find /var -size +100M -mtime -7# 3. 找命令路径 → 用 which 或 type which python3 type cd# 4. locate + find 组合:先用 locate 缩小范围 locate nginx.conf | head -1 | xargs dirname | xargs -I {} find {} -name "*.conf"

十、实战场景演练

场景 1:快速定位被遗忘的配置文件

运维工作中经常需要找到某个应用的配置文件位置,但又不记得具体路径。locate 可以瞬间搞定:

# 找到所有 nginx 配置文件 locate -e nginx.conf# 找到 redis 配置 locate -i redis | grep -E '(conf|cfg)$'# 找到 mysql 配置文件 locate -e my.cnf locate -e mysqld.cnf

场景 2:清理过期备份文件

系统运行一段时间后,会积累大量 .bak、~、.old 等备份文件。可以用 locate 配合 xargs 批量清理:

# 1. 先查看有哪些备份文件 locate -0 -r '\.(bak|backup|old|orig|~)$' | xargs -0 ls -la 2>/dev/null | head -20# 2. 确认后批量删除(请先 dry-run) locate -0 -r '\.(bak|backup|~)$' /home/ | xargs -0 -I {} echo "Will remove: {}"# 3. 实际删除(请谨慎) locate -0 -r '\.(bak|backup|~)$' /home/ | xargs -0 rm -fv# 4. 统计释放的空间 locate -0 -r '\.bak$' /home/ | xargs -0 du -ch | tail -1

场景 3:审计可疑文件

在安全审计中,经常需要查找具有 SUID 权限的可执行文件、临时目录下的可疑脚本等。虽然 find 更适合这类需求,但 locate 可以作为快速初筛工具:

# 1. 查找 /tmp 下的可执行文件 locate -0 /tmp/ | xargs -0 file 2>/dev/null | grep -i executable | head# 2. 查找隐藏的脚本文件 locate -r '/\.[a-z]+$' /var/www/ | grep -E '\.(sh|pl|py|php)$'# 3. 查找大文件(先定位再统计) locate -0 /var/log | xargs -0 du -sh 2>/dev/null | sort -rh | head -10# 4. 查找所有 SSH 密钥文件 locate -r '/\.ssh/(id_rsa|id_ed25519|authorized_keys)$'

场景 4:开发环境中的依赖查找

# 1. 查找某个 Python 库的所有文件 locate -r '/site-packages/(requests|numpy)/' | head -20# 2. 查找 Node.js 全局安装的包 locate -r '/node_modules/(react|vue|express)/package.json' | head# 3. 查找 JDK 安装路径 locate -e java | grep -E '/bin/java$'# 4. 查找某个库的所有 .so 文件 locate -r 'libssl\.so'

十一、总结与速查表

locate 是 Linux 系统中被严重低估的文件查找工具。通过本文的学习,你应该已经掌握了它的核心概念、参数体系、实战技巧以及与同类工具的差异。下面是核心知识点的速查表:

核心参数速查

# 基础查找 locate filename                    # 子串匹配 locate -b filename                 # 仅匹配文件名 locate -i filename                 # 忽略大小写 locate -x filename                 # 完全匹配 locate -l 20 filename              # 限制结果数 locate -c filename                 # 统计数量 locate -e filename                 # 仅存在文件 locate -0 filename                 # NUL 分隔输出 locate -r 'pattern'                # 正则匹配 locate -S                          # 数据库统计# 数据库管理 sudo updatedb                      # 手动更新数据库 cat /etc/updatedb.conf             # 查看更新配置 ls /etc/cron.daily/mlocate         # 查看 cron 任务

最佳实践清单

场景
推荐做法
查找新文件
先 updatedb 再 locate,或用 find
脚本中调用
加 -q -0,配合 xargs -0
需要精确结果
用 -b -x -e 组合
批量处理
先 -c 估算,再 -l 控制
审计安全
locate 初筛 + find 精查

💡 最后建议:locate 与 find 各有优势,不要把 locate 当作 find 的完全替代品。在日常工作中,养成"先 locate 快速定位,再 find 精细处理"的习惯,会让你的工作效率倍增。掌握本文介绍的所有技巧后,相信你已经能熟练运用 locate 解决 90% 的文件查找问题了!

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-22 12:59:57 HTTP/2.0 GET : https://f.mffb.com.cn/a/511786.html
  2. 运行时间 : 0.192092s [ 吞吐率:5.21req/s ] 内存消耗:4,841.70kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=5b5cf40d54cc090f4431f2b8dfd7d6a9
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000471s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001367s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.003353s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000929s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001468s ]
  6. SELECT * FROM `set` [ RunTime:0.004123s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001553s ]
  8. SELECT * FROM `article` WHERE `id` = 511786 LIMIT 1 [ RunTime:0.001245s ]
  9. UPDATE `article` SET `lasttime` = 1787374797 WHERE `id` = 511786 [ RunTime:0.009473s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000819s ]
  11. SELECT * FROM `article` WHERE `id` < 511786 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.009452s ]
  12. SELECT * FROM `article` WHERE `id` > 511786 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.011743s ]
  13. SELECT * FROM `article` WHERE `id` < 511786 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.013877s ]
  14. SELECT * FROM `article` WHERE `id` < 511786 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002447s ]
  15. SELECT * FROM `article` WHERE `id` < 511786 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.003844s ]
0.196065s