当前位置:首页>Linux>Linux 从0到1 : 06 · 输入输出与管道

Linux 从0到1 : 06 · 输入输出与管道

  • 2026-08-18 23:10:25
Linux 从0到1 : 06 · 输入输出与管道
 欢迎来到罐子的实验室
    今天来学习输入输出与管道

    本次目标

    理解命令行的「真正威力」——重定向和管道。学会把命令的输入输出像水管一样拼接、过滤、保存。

学完你能做什么

  • 理解 stdin / stdout / stderr 三个标准流
  • 用 >>><2> 重定向输入输出
  • 用 | 把命令串成「流水线」
  • 用 tee、进程替换、命名管道处理复杂数据流

1. 三个标准流

每个 Linux 进程一出生就有三条「数据通道」,简称三个标准流

缩写
文件描述符(FD)
作用
标准输入stdin
0
进程读入数据的地方(如键盘输入)
标准输出stdout
1
进程输出正常结果的地方(默认是屏幕)
标准错误stderr
2
进程输出错误信息的地方(默认也是屏幕)

为什么把它们分开?因为这样你就能分别处理正常结果和错误信息——比如把结果存文件,把错误显示在屏幕上。

文件描述符(FD) 是 Linux 给每条通道编的号。这三条是固定的 0/1/2。


2. 输出重定向:> 和 >>

> 把命令的标准输出写进文件,而不是显示在屏幕上:

user@host:~echo hello > greeting.txtuser@host:~cat greeting.txthello

屏幕上没有显示 hello——它被「截走」进了文件。

⚠️ > 会覆盖——如果文件已存在,原内容会被清空替换!

user@host:~echo first > f.txtuser@host:~echo second > f.txtuser@host:~cat f.txtsecond# first 没了!

追加而不覆盖,用 >>

user@host:~$ echo first > f.txtuser@host:~$ echo second >> f.txtuser@host:~$ cat f.txtfirstsecond

动手练习 1:写一个清单

任务:用 echo 把三行内容("买菜"、"洗碗"、"扔垃圾")追加写进 todo.txt,然后查看。

思路引导:第一行用 >(创建/覆盖),后两行用 >>(追加)。

参考答案

user@host:~echo 买菜 > todo.txtuser@host:~echo 洗碗 >> todo.txtuser@host:~echo 扔垃圾 >> todo.txtuser@host:~cat todo.txt买菜洗碗扔垃圾

常见错误:第二行误用 > 把第一行覆盖了——分清 >(覆盖)和 >>(追加)。


3. 错误重定向:2>

回想 FD 编号:stdout 是 1,stderr 是 2。> 默认重定向的是 1,等价于 1>。要重定向错误,写 2>

user@host:~ls /不存在的目录ls: cannot access '/不存在的目录'No such file or directory# 这条是 stderruser@host:~ls /不存在的目录 2> err.log# 错误进文件,屏幕上看不到了user@host:~cat err.logls: cannot access '/不存在的目录'No such file or directory

2> 同样会覆盖,2>> 是追加。

同时重定向 stdout 和 stderr

一个命令可以分别把正常输出和错误送到不同地方:

user@host:~ls /etc /不存在 > result.txt 2> error.txt

result.txt 里是 /etc 的列表,error.txt 里是关于 /不存在 的报错。

动手练习 2:分离错误

任务:运行 find / -name passwd,让正常结果留在屏幕上,但把所有 Permission denied 错误丢到 /dev/null(一个「黑洞」设备文件,写进去的东西都消失)。

思路引导2> /dev/null 把 stderr 丢掉。

参考答案

user@host:~$ find / -name passwd 2> /dev/null/etc/passwd/usr/share/base-files/passwd

清爽多了——之前刷屏的那些 Permission denied 全消失了。


4. 2>&1:把错误合并到输出

有时你想让 stdout 和 stderr 合并到一起。比如用管道把错误也传给 grep(管道默认只传 stdout,详见下节)。

2>&1 的意思是「把 FD2(stderr)重定向到 FD1(stdout)当前指向的地方」:

user@host:~ls /etc /不存在 > all.log 2>&1user@host:~cat all.logls: cannot access '/不存在'No such file or directory/etc 下的文件列表...

注意顺序很重要!Shell 从左到右处理重定向:

写法
效果
> all.log 2>&1
✅ 两者都进 all.log
2>&1 > all.log
❌ stderr 进屏幕,stdout 进 all.log(因为 2>&1 时 stdout 还指向屏幕)

💡 还有个更简洁的写法:&> all.log 等价于 > all.log 2>&1,把两者都重定向到同一个文件。

动手练习 3:合并并保存

任务:把 find / -name "*.log" 的正常结果和错误都写进 find_result.log

参考答案

user@host:~find / -name ”*.log” &> find_result.log

5. 输入重定向:<

< 把文件内容喂给命令的标准输入,而不是让命令从键盘读:

user@host:~echo hello > msg.txtuser@host:~rev < msg.txt# rev 把输入反转olleh

很多命令既能用参数也能用 <,效果类似:

user@host:~cat msg.txt# 参数形式hellouser@host:~cat < msg.txt# 输入重定向形式hello

(对 cat 来说结果一样,但机制不同:前者 cat 自己打开文件,后者 Shell 把文件喂给 cat。)

动手练习 4:让命令读文件

任务:用 < 把 todo.txt 的内容喂给 wc -l(统计行数)。

参考答案

user@host:~wc -l < todo.txt3

6. 管道:|

管道是命令行的灵魂| 把左边命令的 stdout 连到右边命令的 stdin,让数据像水管一样流动:

user@host:~$ ls /etc | wc -l# 数 /etc 下有多少项243user@host:~$ ls /etc | grep pa# 找 /etc 下含 ”pa” 的项passwdpapersize...

管道可以串联很多级

user@host:~$ ls /etc | grep ^s | sort | head

含义:列出 /etc → 留下 s 开头的 → 排序 → 取前几行。

💡 关键:管道只传 stdout,不传 stderr。想让错误也流过去,要先 2>&1 把它合并进 stdout(见第 4 节)。

动手练习 5:流水线查日志

任务:模拟一个日志文件(yes error | head -100000 > fake.log 造个 10 万行文件),用管道在一行命令里:读文件 → 找含 "error" 的行 → 数有多少条。

思路引导cat fake.log | grep error | wc -l,或更简洁 grep error fake.log | wc -l

参考答案

user@host:~$ yes ”some error here” | head -100000 > fake.loguser@host:~$ grep error fake.log | wc -l100000

💡 这里 yes "..." 无限循环输出一行,head -100000 取前 10 万行(head 详见《模块 07》),重定向进文件。这是造测试数据的常用手法。

常见错误

  • ❌ cat file > grep xxx——> 是重定向到文件,不是管道。要传给命令用 |
  • ⚠️ 管道右边只能接到 stdin。如果右边命令必须用「文件名参数」(如 cp),管道就不管用,要用进程替换(见第 8 节)。

7. tee:分流器

tee(像水管的三通接头)把 stdin 同时输出到屏幕一个或多个文件:

user@host:~$ echo hi | tee a.txt b.txthi# 屏幕显示user@host:~$ cat a.txthiuser@host:~$ cat b.txthi

经典用途:调试管道——你想看中间数据长啥样,又不想断开管道:

user@host:~$ ls /etc | tee debug.txt | grep pa | wc -l

debug.txt 里存了 ls /etc 的完整输出,供你事后查看。

tee -a 是追加模式(类似 >>)。

动手练习 6:边看边存

任务:运行 ls -l /etc,既要让结果在屏幕上滚过去,又要存一份到 etc_list.txt

参考答案

user@host:~$ ls -l /etc | tee etc_list.txt(屏幕上同时显示,文件里也有)

8. 进程替换:<(...) 和 >(...)

Linux 信奉「万物皆文件」。进程替换让你把命令的输出伪装成一个临时文件名,传给那些「只接受文件名参数」的命令。

输入进程替换:<(命令) —— 命令的输出变成了一个「文件路径」:

user@host:~echo <(echo hi)/dev/fd/63# bash 造了个临时路径user@host:~cat <(echo hi)# cat 当它是文件来读hi

最典型的应用——比较两个命令的输出,无需先存成临时文件:

user@host:~$ diff <(ls dir1) <(ls dir2)

这等价于「先存两个临时文件再 diff」,但一气呵成。

输出进程替换:>(命令) —— 把数据写进这个「路径」就等于喂给命令的 stdin:

user@host:~$ echo hi | tee >(wc -l) >(rev)hi1# wc -l 的结果ih# rev 的结果

动手练习 7:对比两份清单

任务:用进程替换,比较 /etc 和 /usr/etc(如果存在)下文件名的差异。

参考答案

user@host:~$ diff <(ls /etc) <(ls /usr/etc)

💡 进程替换很强大但可读性差,别滥用。能用普通管道解决就别用它。


9. 命名管道(FIFO)

之前用的 | 是「匿名管道」,随用随建随拆。你也可以用 mkfifo 创建一个持久存在的命名管道(FIFO):

user@host:~mkfifo my_pipeuser@host:~ls -l my_pipeprw-r--r-- 1 user user 0 Jun 30 18:00 my_pipe# 权限开头的 p 表示 pipe

FIFO 的特别之处:写入端和读取端必须同时就绪,否则会「阻塞」等待。

打开两个终端

终端 A(写):

user@host:~echo ”hello from the other side” > my_pipe# 这条命令会卡住,直到有人来读

终端 B(读):

user@host:~cat my_pipehello from the other side# 此时终端 A 的命令才结束

FIFO 用于跨进程实时通信——数据不落盘,读完即消失。日常用得不多,但理解它有助于理解管道的本质。

动手练习 8:体验阻塞

任务:在两个终端间用 FIFO 传一句话。

思路引导:一个终端 echo ... > my_pipe,另一个 cat my_pipe

参考答案:见上面两个终端的示例。

常见错误:单终端里 echo x > my_pipe 会卡死等读端——这不是 bug,是 FIFO 的特性。Ctrl-C 退出。


本模块速查表

操作
含义
命令 > 文件
stdout 覆盖写入文件
命令 >> 文件
stdout 追加到文件
命令 2> 文件
stderr 写入文件
命令 2>> 文件
stderr 追加
命令 > 文件 2>&1
stdout 和 stderr 都进文件
命令 &> 文件
同上的简写
命令 < 文件
把文件喂给命令 stdin
命令1 | 命令2
命令1 的 stdout → 命令2 的 stdin
命令 | tee 文件
边显示边存文件
<(命令)
把命令输出当文件
2> /dev/null
丢弃错误

三个流的 FD

FD 0 = stdin ← 进程读入FD 1 = stdout ← 正常输出FD 2 = stderr ← 错误输出

下一步

输出能存、能传、能丢了。但你常常还要加工这些数据——找关键字、替换、截取、排序。这就是文本处理工具的主场。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-21 14:36:41 HTTP/2.0 GET : https://f.mffb.com.cn/a/504149.html
  2. 运行时间 : 0.235678s [ 吞吐率:4.24req/s ] 内存消耗:4,728.88kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=00f6b539db7f80cc524286a0aa7ede2a
  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.001024s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001349s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000641s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000615s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001321s ]
  6. SELECT * FROM `set` [ RunTime:0.000550s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001362s ]
  8. SELECT * FROM `article` WHERE `id` = 504149 LIMIT 1 [ RunTime:0.008866s ]
  9. UPDATE `article` SET `lasttime` = 1787294202 WHERE `id` = 504149 [ RunTime:0.011747s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000697s ]
  11. SELECT * FROM `article` WHERE `id` < 504149 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.004550s ]
  12. SELECT * FROM `article` WHERE `id` > 504149 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.012867s ]
  13. SELECT * FROM `article` WHERE `id` < 504149 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002258s ]
  14. SELECT * FROM `article` WHERE `id` < 504149 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003826s ]
  15. SELECT * FROM `article` WHERE `id` < 504149 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.022142s ]
0.239292s