当前位置: 首页 > news >正文

关于 2>/dev/null 的作用以及机理

每个进程都有三个标准文件描述符:stdin(标准输入)、stdout(标准输出)和stderr(标准错误)。默认情况下,stderr会输出到终端。使用2>可以将stderr重定向到其他地方,比如文件或者设备文件。/dev/null作为一个字符设备,所有写入它的数据都会被丢弃,不会保存在任何地方,因此执行命令时产生的错误信息就不会显示出来,也不会保存在日志文件中。

 

 

重定向符号功能典型示例
>覆盖式写入文件echo "test" > output.txt
>>追加式写入文件echo "test" >> output.txt
2>重定向标准错误到文件ls /dir 2> errors.log
2>&1将标准错误合并到标准输出`cat file 2>&1
>/dev/null静默丢弃标准输出rm -rf /tmp >/dev/null
2>/dev/null静默丢弃标准错误​(本文重点)find * 2>/dev/null

 # 将错误信息记录到日志文件
command 2> /var/log/command_errors.log

每个进程维护的文件描述符表:

0: stdin(键盘输入)
1: stdout(屏幕输出)
2: stderr(错误输出)

command 2> /var/log/command_errors.log是将标准错误(stderr,文件描述符2)重定向到指定的日志文件。 

command 1> /var/log/command_errors.log是将标准输出(stdout,文件描述符1)重定向到同一个日志文件

command 0> /var/log/command_errors.log是将标准输入(stdin,文件描述符0)重定向到日志文件。

同时重定向 stdout 和 stderr
# 使用 &> 同时重定向两个流到同一文件(覆盖模式)
command &> /var/log/command.log

# 使用 >> 追加模式(保留历史记录)
command >> /var/log/command.log
2. ​分离输出流和错误流
# 将 stdout 记录到日志,stderr 显示在终端
command 1> /var/log/output.log 2>&1

# 将 stderr 记录到日志,stdout 显示在终端
command 2> /var/log/error.log 1>&2

 

 将所有输出全部存到日志

1. ​同时重定向标准输出(stdout)和标准错误(stderr)​
 

bash

command > log.txt 2>&1
  • 说明
    • >:重定向标准输出到文件(覆盖模式)
    • 2>&1:将标准错误流重定向到标准输出的位置(即 log.txt
  • 效果
    • 所有输出(包括错误信息)都保存到 log.txt
    • 屏幕上不再显示任何输出
#!/bin/bash
exec > log.txt 2>&1  # 重定向所有输出到 log.txt
set -o pipefail      # 确保管道命令失败时脚本终止

相关文章:

  • 半导体制造行业的现状 内检LIMS系统在半导体制造的应用
  • EJS缓存解决多页面相同闪动问题
  • MySQL中的锁机制:从全局锁到行级锁
  • 「JavaScript深入」Socket.IO:基于 WebSocket 的实时通信库
  • keepalived+nginx+tomcat高可用
  • C# 中比较实用的关键字,基础高频面试题!
  • Linux系统中安装各种常用中间件
  • android adjust 卸载与重装监测
  • 投影算子(Projection Operator)的定义、性质、分类以及应用
  • CentOS 7 64位安装Docker
  • python关键字汇总
  • 面试总结之 Glide自定义的三级缓存策略
  • 回调方法传值汇总
  • websocket中spring注入失效
  • 【多线程】线程安全集合类,ConcurrentHashMap实现原理
  • 本地部署DeepSeek-R1(每天8:00Dify通过企微机器人推送新闻热点到群里)
  • C语言:结构化程序设计的核心思想笔记
  • 面试康复训练-SQL语句
  • RIP实验
  • CloudStack安装部署
  • 硅料收储挺价“小作文”发酵光伏板块罕见大涨,知情人士:确实在谈
  • 通化市委书记孙简升任吉林省副省长
  • 线下哪些商家支持无理由退货?查询方法公布
  • 美英贸易协议|不,这不是一份重大贸易协议
  • 甩掉“肥胖刺客”,科学减重指南来了
  • 来伊份深夜回应“粽子中吃出疑似创可贴”:拿到实物后会查明原因