当前位置:首页>Linux>【Linux·基础篇】Shell 基础|重定向:数据流的指挥棒(一)

【Linux·基础篇】Shell 基础|重定向:数据流的指挥棒(一)

  • 2026-07-02 21:27:31
【Linux·基础篇】Shell 基础|重定向:数据流的指挥棒(一)

本文将聚焦 Linux Shell 中重定向操作的核心概念、使用方法和实战场景,展示其如何通过改变标准输入、输出和错误的默认流向,在命令与文件之间建立灵活的数据通道,从而实现对命令行输入输出的精准控制,提升任务自动化、日志记录和数据处理的效率与可靠性。

[本文基于 CentOS Linux release 7 系统环境]

前情提要:通过往期文章《【Linux·基础篇】Shell 基础|管道:命令的连接器》的内容,我们了解了管道的核心概念和使用方法。

掌握了管道,我们就能让数据在命令之间流畅穿梭、实时处理。

在 Linux 的 Shell 世界里,每一个命令都像一个小型工厂:它从“标准输入”接收原材料,在“标准输出”吐出成品,遇到问题则在“标准错误”发出警报。默认情况下,输入来自我们的键盘,输出显示在屏幕(终端)。但如果我们想改变这种默认的数据流向呢?比如,你是否想过这两个问题:

  1. 1. 如果流水线的“原料”不是来自另一个命令,而是来自硬盘上已有的一份文件,该怎么办?
  2. 2. 如果我想把这条流水线的最终“成品”保存下来,而不仅仅是显示在屏幕上,又该怎么办?

简言之,想让命令从文件读取数据,或将结果保存到文件,该如何?此时,就需要请出管道的“黄金搭档”——重定向

掌握了重定向,我们就可以轻松地掌控数据流向。

如果说管道是连接命令与命令的“连接器”,可以将多个独立的命令串联起来,构成一条数据流,那么重定向就是这条数据流的“指挥棒”。

重定向不负责连接命令,也不处理数据,而是决定了这条数据流(或任何单一命令)的起点和终点,即重新定义数据的来源与去向(输入与输出),比如指挥数据是“从屏幕来还是从文件来”,以及“到屏幕去还是到文件去”。

接下来,我们就来解锁这项让命令的输入输出完全听我们指挥的核心技能,让我们的命令操作更加高效、灵活。

一、标准输出重定向:保存结果,让屏幕更清爽

当我们希望将命令的“正常输出结果(即标准输出)”保存到文件,而不是显示在屏幕上时,就需要使用标准输出重定向

标准输出重定向通过 > 和 >> 这两种符号,为标准输出提供了两种写入文件的模式:覆盖模式追加模式

覆盖模式:> 符号

  • • 名称:覆盖输出重定向
  • • 语法command > file
  • • 描述:将命令执行后的标准输出写入到指定文件中。如果文件已存在,则会覆盖原有内容(清空文件后从头开始写);如果文件不存在,则会创建它。
  • • 示例
    • • 示例 1:
       ls 命令的结果保存到 list.txt 文件中,屏幕不再显示ls -l > list.txt
    • • 示例 2:
      覆盖已存在的文件echo "这是新内容" > existing_file.txt

追加模式:>> 符号

  • • 名称:追加输出重定向
  • • 语法command >> file
  • • 描述:与 > 类似,但会将命令的标准输出追加到指定文件的末尾(保留原内容并在文件末尾接着写),而不是覆盖,非常适合用于记录日志。
  • • 示例
    • • 示例 1:
      将当前日期时间追加到 log.txt 文件的末尾date >> log.txt
    • • 示例 2:
      多次追加构建日志echo "=== 脚本开始 ===" > script.logsome_command >> script.logecho "=== 脚本结束 ===" >> script.log

二、标准错误重定向:分离错误信息,便于排查

程序运行时的错误信息默认通过“标准错误”通道输出,我们也可以单独管理它,避免错误信息干扰正常输出。

类似地,标准错误重定向通过 2> 和 2>> 这两种符号,为标准错误提供了两种写入文件的模式:覆盖模式追加模式

覆盖模式:2> 符号

  • • 名称:覆盖错误重定向
  • • 语法command 2> file
  • • 描述:将命令执行过程中的错误信息重定向到指定文件。这里的 2 是标准错误流的文件描述符编号。
  • • 示例
    • • 示例 1
      尝试查看一个不存在的文件,错误信息会被保存到 error.log,屏幕不显示ls not_exist_file 2> error.log
    • • 示例 2
      查看文件,正常结果到屏幕,错误到文件find / -name "*.conf" 2> errors.txt

    追加模式:2>> 符号

    • • 名称:追加错误重定向
    • • 语法command 2>> file
    • • 描述:将标准错误追加到指定文件末尾。
    • • 示例
      # 将多个命令的错误信息累积记录command1 2>> all_errors.logcommand2 2>> all_errors.log

    三、综合应用:同时处理标准输出与标准错误

    我们可以将前面几种有关输出的重定向组合使用,实现对输出更精细的控制。

    标准输出与标准错误重定向到不同文件

    • • 语法command > output_file 2> error_file
    • • 描述:将标准输出标准错误分别重定向到两个不同的文件,实现结果和日志的分离。
    • • 示例
      • • 示例 1:
        正常结果进 output.txt,错误信息进 errors.txtsome_script.sh > output.txt 2> errors.txt
      • • 示例 2:
        编译程序,结果和错误分开记录gcc program.c > compile_output.txt 2> compile_errors.txt

    标准输出与标准错误重定向到同一文件

    • • 语法
      传统写法command > file 2>&1 # 覆盖模式command >> file 2>&1 # 追加模式现代简写command &> file # 覆盖模式command &>> file # 追加模式
    • • 描述:将标准输出标准错误都重定向到同一个文件。2>&1 表示“将标准错误合并到标准输出流”,更简洁的现代写法是 &>
    • • 示例
      # 将所有输出(无论正常还是错误)都保存到 all_output.log# 传统写法./some_script.sh > all_output.log 2>&1 # 覆盖模式./some_script.sh >> all_output.log 2>&1 # 追加模式# 现代写法./some_script.sh &> all_output.log # 覆盖模式./some_script.sh &>> all_output.log # 追加模式

    四、黑洞设备:重定向到 /dev/null

    在 Linux 中,/dev/null 是一个特殊的设备文件,被称为“黑洞设备”或“空设备”。所有写入它的数据都会被永久丢弃,读取它则立即返回文件结束。

    在这里我们主要介绍对 /dev/null 的写入。以下介绍静默执行命令的几种方式。

    • • 语法
      command > /dev/null        # 仅丢弃标准输出command 2> /dev/null       # 仅丢弃标准错误command &> /dev/null       # 丢弃所有输出(现代简写)command > /dev/null 2>&1   # 丢弃所有输出(传统写法)
    • • 描述:将命令的输出重定向到 /dev/null 设备,相当于完全丢弃输出。这在我们希望完全静默运行命令,丢弃所有输出时非常有用,例如运行脚本时不需要看到任何输出,或者只想检查命令是否成功执行(通过返回值)。
    • • 示例
      • • 示例 1:
        忽略特定命令的警告信息find / -name "*.log" 2> /dev/nullmake 2> /dev/null
      • • 示例 2:
        后台运行服务,不产生任何输出nohup my_service &> /dev/null &nohup some_daemon > /dev/null 2>&1 &
      • • 示例 3:
        只检查命令是否成功,不关心输出内容if grep "pattern" file.txt > /dev/null 2>&1; then    echo "模式找到"fiif ping -c1 example.com &> /dev/null; then    echo "主机可达"fi

    五、标准输入重定向:从文件读取数据

    除了管理输出,我们还可以改变命令输入的来源,让“标准输入”从外部文件读取。

    基本语法:< 符号

    • • 名称:标准输入重定向
    • • 语法command < file
    • • 描述:让命令从指定的文件中读取输入,而不是等待键盘输入。
    • • 示例
      • • 示例 1:
        从文件读取邮件内容发送假设 mail_content.txt 文件里是一封邮件正文,用 mail 命令发送mail -s "通知" user@example.com < mail_content.txt
      • • 示例 2:
        统计文件的行数、单词数、字符数wc < document.txt
      • • 示例 3:
        对文件内容排序sort < unsorted_list.txt > sorted_list.txt
      • • 示例 4:
        批量创建用户while read username; do    useradd "$username"done < user_list.txt
      • • 示例 5:
        从配置文件读取设置source <(grep '^export' config.env)

      六、Here Document:在命令行中嵌入多行输入

      Here Document 是输入重定向的一种特殊形式(内联形式),它允许我们直接在命令行中为命令指定多行输入数据,而无需依赖外部文件。

      基本语法:<< 符号

      • • 名称:Here Document
      • • 语法
        command << DELIMITER输入数据...多行数据...DELIMITER
      • • 描述: << 后面的 DELIMITER 是一个自定义的终止标记词(定界符),例如可以自定义为 EOFEND。Shell 会将接下来直到再次遇到这个标记词的所有行,都作为命令的标准输入。常用于脚本中向交互式命令批量传递参数。
      • • 示例
        • • 示例 1:
           cat 命令传递多行文本,cat 会将其原样输出cat << EOF这是第一行。这是第二行。这里是终止标记 EOF 之前的所有内容都会被输出。EOF
        • • 示例 2:
          生成脚本或配置文件cat > setup.sh << 'EOF'#!/bin/bashecho "开始安装..."安装步骤EOFchmod +x setup.sh
        • • 示例 3:
          在脚本中为命令提供多行输入进行批量配置ftp -n << END_SCRIPTopen ftp.example.comuser username passwordget file.txtquitEND_SCRIPT
        • • 示例 4:
          向交互式程序提供输入sudo passwd user1 << EOFnewpasswordnewpasswordEOF

      七、结语

      重定向是 Shell 编程的基石之一,它打破了命令只能与人交互的限制,架起了命令与命令、命令与文件之间数据流通的桥梁。从简单的保存列表,到复杂的日志记录和脚本输入,都离不开它。

      通过 /dev/null 这个特殊的“黑洞设备”,我们还能实现完全静默的命令执行,这在自动化脚本和后台任务中尤其有用。而 <<< 等输入重定向则让我们能够轻松地从文件或其他来源获取输入,大大扩展了命令的灵活性。

      建议你不妨现在就去打开终端,用 lsecho 等简单命令配合 >>>2>/dev/null 多做几次练习。当你习惯了让数据“指哪儿打哪儿”,你会发现 Linux 命令行的高效与优雅,又向你敞开了一扇新的大门。

      最后,我们可以将重定向与管道进行简单的对比。

      特性
      重定向
      管道
      核心功能
      命令 ↔ 文件
      命令 ↔ 命令
      数据流向
      改变输入/输出的来源和目标
      在命令间传递数据流
      主要符号>
      <>>2>
      |
      典型用途
      保存输出、读取文件、分离错误
      组合命令、多级处理
      举例ls > list.txt
      :把 ls 的结果,存入文件 list.txt
      ls | grep ".txt"
      :把 ls 的结果,传给grep 过滤。

      二者各司其职,也常强强联合。比如,我们可以先用管道组合多个命令进行复杂处理,最后用重定向将成果保存:

      • • 语法
        command1 | command2 > file
      • • 示例
        ps aux | grep python | wc -l > python_count.txt

      此番炼器手札,炉火尚未全熄。若道友观之有趣,或可暂留此间,结一尘缘。待下回开炉铸器,新得感悟,必先与同道分享。

      最新文章

      随机文章

      基本 文件 流程 错误 SQL 调试
      1. 请求信息 : 2026-07-03 17:57:14 HTTP/2.0 GET : https://f.mffb.com.cn/a/489525.html
      2. 运行时间 : 0.119769s [ 吞吐率:8.35req/s ] 内存消耗:4,620.30kb 文件加载:140
      3. 缓存信息 : 0 reads,0 writes
      4. 会话信息 : SESSION_ID=931c2ce77b8b73cd316e2a2c8a967c1a
      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.000884s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
      2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001479s ]
      3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.002620s ]
      4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000385s ]
      5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000804s ]
      6. SELECT * FROM `set` [ RunTime:0.000876s ]
      7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001524s ]
      8. SELECT * FROM `article` WHERE `id` = 489525 LIMIT 1 [ RunTime:0.002252s ]
      9. UPDATE `article` SET `lasttime` = 1783072634 WHERE `id` = 489525 [ RunTime:0.001768s ]
      10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.002929s ]
      11. SELECT * FROM `article` WHERE `id` < 489525 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001647s ]
      12. SELECT * FROM `article` WHERE `id` > 489525 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000825s ]
      13. SELECT * FROM `article` WHERE `id` < 489525 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001798s ]
      14. SELECT * FROM `article` WHERE `id` < 489525 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.012452s ]
      15. SELECT * FROM `article` WHERE `id` < 489525 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.012094s ]
      0.121430s