当前位置:首页>Linux>Linux操作系统-计划任务管理

Linux操作系统-计划任务管理

  • 2026-07-06 16:50:01
Linux操作系统-计划任务管理

Linux 计划任务实战:cron、at 与 systemd timer

引言

凌晨三点,你还在睡梦中,服务器却正在自动执行着数据备份、日志清理、证书续期——这些任务不需要任何人守着,全靠计划任务在背后默默工作。

计划任务是 Linux 系统自动化运维的核心能力。如果你还在手动执行那些重复性的定时操作,那这篇文章就是为你准备的。今天我们来彻底搞懂 Linux 计划任务的三大工具:cron(周期性任务)、at(一次性任务)和 systemd timer(现代化的替代方案)。

一、cron:Linux 计划任务的“老大哥”

1.1 什么是 cron?

cron 是 Linux 系统中最经典、最常用的任务调度工具。它以一个名为 crond 的守护进程运行在后台,每分钟醒来一次,检查是否有需要执行的任务。

cron 适合做周期性、重复性的工作,比如:

  • 每天凌晨备份数据库
  • 每小时同步一次日志
  • 每周清理一次过期文件
  • 每月生成一份统计报表

1.2 crontab 时间表达式:五个字段定乾坤

cron 的核心是 crontab(cron table 的缩写),也就是任务调度表。每一条 cron 任务都遵循一个固定的格式:

* * * * * command_to_execute─ ─ ─ ─ ─│ │ │ │ ││ │ │ │ └─── 星期 (0-7,0和7都表示周日)│ │ │ └───── 月份 (1-12)│ │ └─────── 日期 (1-31)│ └───────── 小时 (0-23)└─────────── 分钟 (0-59)

每个时间字段还支持一些特殊符号:

符号
含义
示例
*
所有可能的值
* * * * *
 每分钟执行
,
列举多个值
1,3,5
 表示第1、3、5分钟
-
表示范围
9-17
 表示9点到17点
/
表示间隔
*/15
 表示每15分钟

来看几个实际例子:

# 每天凌晨 3 点执行备份脚本0 3 * * * /opt/scripts/db_backup.sh# 每 5 分钟执行一次监控任务*/5 * * * * /opt/scripts/monitor.sh# 每周一至周五的上午 9 点到下午 5 点,每半小时执行一次*/30 9-17 * * 1-5 /usr/bin/log_sync.sh# 每月 1 号和 15 号的凌晨 3 点执行0 3 1,15 * * /usr/local/bin/clear_cache.sh

1.3 管理 crontab:增删改查四件套

crontab 命令是管理用户级定时任务的核心工具:

# 编辑当前用户的定时任务(会打开默认编辑器)crontab -e# 查看当前用户的所有定时任务crontab -l# 删除当前用户的所有定时任务(慎用!)crontab -r# 以 root 身份编辑指定用户的定时任务crontab -u username -e

1.4 用户级 vs 系统级 cron

cron 的任务配置分为两个层级:

用户级 crontab

  • 通过 crontab -e 编辑
  • 每个用户独立,存储在 /var/spool/cron/ 目录下
  • 适合个人业务任务

系统级 crontab

  • 配置文件位于 /etc/crontab
  • 格式多了一个“用户”字段:分 时 日 月 周 用户 命令
  • 仅 root 可编辑,适合系统级维护任务
# 系统级 crontab 示例(/etc/crontab)30 3 * * * root /usr/bin/backup.sh

此外,Linux 还提供了一组预设目录,把脚本放进去就能定时执行:

目录
执行频率
/etc/cron.hourly/
每小时
/etc/cron.daily/
每天
/etc/cron.weekly/
每周
/etc/cron.monthly/
每月

1.5 权限控制:谁能用 cron?

系统通过两个文件控制用户对 cron 的访问权限:

  • /etc/cron.allow
    白名单,仅列出的用户可用。如果存在,cron.deny 被忽略。
  • /etc/cron.deny
    黑名单,列出的用户不可用。

默认情况下,/etc/cron.deny 存在但为空(所有人都可以用),/etc/cron.allow 不存在。

# 只允许 user1 使用 cronecho "user1" > /etc/cron.allow# 只禁止 user2 使用 cron(需确保 cron.allow 不存在)echo "user2" > /etc/cron.deny

二、at:只执行一次的“一次性任务”

不是所有任务都需要反复执行。如果你只是想在某个特定时间点执行一次某个操作,at 命令是更好的选择。

2.1 基本用法

at 的语法非常简洁:

at [时间]

输入命令后按 Ctrl+D 结束输入,任务就会被调度。

时间可以写成多种形式:

# 绝对时间at 23:00              # 今晚 11 点at 3:00 PM            # 下午 3 点at 2026-07-05 02:00   # 指定日期# 相对时间at now + 30 minutes   # 30 分钟后at now + 1 hour       # 1 小时后at now + 2 days       # 2 天后# 特殊关键词at midnight           # 午夜at noon               # 中午 12 点

2.2 实战示例

# 今晚 11 点关机at 23:00shutdown nowCtrl+D# 30 分钟后创建一个测试文件at now + 30 minutestouch /tmp/test.txtCtrl+D# 凌晨 2 点执行备份脚本at 2:00 AM/opt/scripts/backup.shCtrl+D

2.3 管理 at 任务

# 查看所有待执行的一次性任务atq# 输出示例:# 2   Fri Jan 13 23:00:00 2025 a user# 删除指定任务(按任务编号)atrm 2# 或者使用别名at -l   # 等同于 atqat -d 2 # 等同于 atrm 2

2.4 启用 at 服务

at 命令依赖 atd 守护进程:

# 检查 atd 服务状态systemctl status atd# 启动并启用 atdsystemctl start atdsystemctl enable atd# 如果未安装,先安装# Ubuntu/Debiansudo apt install at# CentOS/RHELsudo yum install at

2.5 at 的权限控制

和 cron 类似,at 也通过 at.allow 和 at.deny 控制用户访问。如果两个文件都不存在,则只有 root 用户可以使用 at。

💡 cron vs at 一句话总结cron 管“重复”,at 管“一次”。周期性任务用 cron,临时性的一次性任务用 at。

三、systemd timer:cron 的现代化接班人

随着 systemd 在 Linux 生态中的全面普及,systemd timer 正逐渐成为 cron 的有力竞争者,甚至可以说是替代方案。

3.1 为什么要用 systemd timer?

相比 cron,systemd timer 有几个显著优势:

优势
说明
日志集中
通过 journalctl 统一查看,排错方便
依赖管理
可以定义任务之间的依赖关系
服务集成
与 systemd 服务深度绑定,管理更规范
精度更高
支持毫秒级精度
持久化
错过执行时间后可以补执行

3.2 核心概念:Service + Timer 双文件

systemd timer 由两个配置文件组成:

  1. .service 文件
    :定义要执行的具体任务(脚本、命令)
  2. .timer 文件
    :定义触发时间规则

3.3 实战:用 systemd timer 替代 cron

假设我们要每天凌晨 3 点执行数据库备份。

第一步:创建 Service 文件

# /etc/systemd/system/db-backup.service[Unit]Description=Database Backup Task[Service]Type=oneshotExecStart=/usr/local/bin/db_backup.shUser=root

第二步:创建 Timer 文件

# /etc/systemd/system/db-backup.timer[Unit]Description=Run database backup daily at 3 AM[Timer]OnCalendar=dailyPersistent=true[Install]WantedBy=timers.target

OnCalendar 支持类似 cron 的语法,也支持更自然的时间表达:

# 每天凌晨 3 点OnCalendar=daily# 每周一凌晨 3 点OnCalendar=Mon *-*-* 03:00:00# 每 5 分钟OnCalendar=*:0/5# 每月 1 号凌晨 3 点OnCalendar=*-*-01 03:00:00

第三步:启用 Timer

# 重新加载 systemd 配置systemctl daemon-reload# 启动 timersystemctl start db-backup.timer# 设置开机自启systemctl enable db-backup.timer# 查看所有 timersystemctl list-timers

3.4 查看 systemd timer 日志

这是 systemd timer 相比 cron 最大的优势——日志统一且清晰:

# 查看特定任务的日志journalctl -u db-backup.service# 实时跟踪journalctl -u db-backup.service -f# 查看最近一天的所有 timer 日志journalctl --since "1 day ago" | grep timer

四、生产环境最佳实践

4.1 永远使用绝对路径

这是 cron 任务失败最常见的原因。cron 的执行环境与你的交互式 Shell 不同,PATH 环境变量通常很短。

❌ 错误做法

* * * * * backup.sh   # 可能找不到命令

✅ 正确做法

* * * * * /opt/scripts/backup.sh

或者在 crontab 文件顶部显式设置 PATH:

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

4.2 记录日志,便于排查

cron 任务的输出默认会通过邮件发送给用户(如果邮件系统未配置,输出可能直接丢失)。建议手动重定向日志:

# 将标准输出和错误都写入日志文件0 3 * * * /opt/scripts/backup.sh >> /var/log/backup.log 2>&1# 分离成功日志和错误日志0 3 * * * /opt/scripts/backup.sh >> /var/log/backup.log 2>> /var/log/backup-errors.log

4.3 防止任务重复执行

如果一个任务执行时间可能超过执行间隔,使用 flock 防止并发执行:

*/5 * * * * flock -n /tmp/task.lock /opt/scripts/task.sh

4.4 最小权限原则

生产环境建议为每个定时任务创建专用用户,避免直接使用 root 权限:

# 以指定用户身份执行crontab -u backupuser -e

4.5 修改/删除前先备份

删除操作不可逆,建议先备份:

crontab -l > /tmp/cron_backup_$(date +%Y%m%d).croncrontab -r   # 确认备份无误后再删除

4.6 在生产环境部署前充分测试

在测试环境中手动运行命令,验证无误后再配置为定时任务。同时要确认服务器时区是否正确——cron 的执行时间依赖于系统时间。

五、三个工具怎么选?一张表告诉你

场景
推荐工具
原因
每天/每周/每月重复执行
cron
经典稳定,语法简单,所有 Linux 默认自带
只需执行一次的临时任务
at
轻量灵活,语法自然
需要精确日志、依赖管理的复杂任务
systemd timer
日志集中、支持依赖、与 systemd 生态集成
新部署的系统,追求现代化
systemd timer
大势所趋,管理更规范

📌 一句话建议日常周期性任务用 cron 就够了;需要精细日志和依赖管理时,切换到 systemd timer;一次性任务直接用 at

六、常见问题排查清单

Q1:cron 任务没执行,怎么查?

第一步:确认 cron 服务在运行

systemctl status crond

第二步:查看 cron 日志

# Ubuntu/Debiangrep CRON /var/log/syslog | tail -20# CentOS/RHELtail -20 /var/log/cron# systemd 系统journalctl -u cron.service -f

第三步:检查语法是否正确

crontab -l   # 查看当前配置

Q2:脚本手动能跑,cron 里跑不了?

这通常是因为 环境变量不同。解决方法:

  1. 在脚本中显式声明 PATH
  2. 在 crontab 顶部设置 PATH
  3. 命令和脚本都使用绝对路径

Q3:at 任务没执行?

# 检查 atd 服务是否运行systemctl status atd# 查看待执行任务atq# 检查权限配置cat /etc/at.allowcat /etc/at.deny

Q4:systemd timer 没触发?

# 查看 timer 状态systemctl status mytimer.timer# 列出所有 timersystemctl list-timers --all# 查看相关日志journalctl -u mytimer.service

总结

从 cron 到 at,再到 systemd timer,Linux 计划任务工具走过了一条从分散到统一、从简单到强大的演进之路。

记住三句话

  1. cron 管“重复”
    :周期性任务的首选,经典可靠。
  2. at 管“一次”
    :临时性任务,用完即走。
  3. systemd timer 管“未来”
    :现代化方案,日志清晰、管理规范。

计划任务是 Linux 自动化运维的基石。掌握了这三个工具,你就能让服务器在无人值守的情况下,有条不紊地完成各种重复性工作——把时间留给更重要的事情。

如果你有任何问题或经验分享,欢迎在评论区留言讨论!

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-06 16:54:24 HTTP/2.0 GET : https://f.mffb.com.cn/a/503709.html
  2. 运行时间 : 0.168948s [ 吞吐率:5.92req/s ] 内存消耗:4,685.27kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=ad98323626aac1079b01cdbcb3c81d94
  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.000513s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000632s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.001215s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.006438s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000520s ]
  6. SELECT * FROM `set` [ RunTime:0.001325s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000569s ]
  8. SELECT * FROM `article` WHERE `id` = 503709 LIMIT 1 [ RunTime:0.005232s ]
  9. UPDATE `article` SET `lasttime` = 1783328064 WHERE `id` = 503709 [ RunTime:0.010362s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000379s ]
  11. SELECT * FROM `article` WHERE `id` < 503709 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.019537s ]
  12. SELECT * FROM `article` WHERE `id` > 503709 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001156s ]
  13. SELECT * FROM `article` WHERE `id` < 503709 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.003192s ]
  14. SELECT * FROM `article` WHERE `id` < 503709 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.013505s ]
  15. SELECT * FROM `article` WHERE `id` < 503709 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.014267s ]
0.170522s