linux shell 中的 2>&1 用法说明
来源:互联网 发布:网页编程 进销存 编辑:程序博客网 时间:2024/05/16 12:24
linux shell 中的 2>&1 用法说明 http://blog.csdn.net/huangfei711/article/details/51059310
版权声明:本文为博主原创文章,未经博主允许不得转载。
Linux中有三种标准输入输出,分别是 STDIN,STDOUT,STDERR,对应的数字是 0,1,2。
STDIN 是标准输入,默认从键盘读取信息;
STDOUT 是标准输出,默认将输出结果输出至终端,也就是显示器之类的东西;
STDERR 是标准的错误信息,默认也会显示在终端上。
由于STDOUT与STDERR都会默认显示在终端上,为了区分二者的信息,就有了编号的0,1,2的定义,用1表示STDOUT,2表示STDERR。
下面举例说明:
以普通用户登陆(Cent OS 7),执行 find /etc -name passwd 命令,默认会将命令的执行结果(STDOUT)与错误信息(STDERR)都输出至终端显示器。
体验一下编号 1,2 的作用,find /etc -name passwd 1>find.out 2>find.err ,这里会将 STDOUT 与 STDERR 分别存放至 find.out 和 find.err 中
个人理解就是 find /etc -name passwd 的命令的执行结果输出正确的输出(STDOUT)被1接收,错误的信息(STDERR)被2接收。
若要将所有的输出及错误信息都显示出来,可以用&表示全部1和2的信息,例如:
find /etc -name passwd &>find.all
有时候希望将错误的信息重新定向到输出,就是将2的结果重定向至1中就有了”2>1”这样的思路,如果按照上面的写法,系统会默认将错误的信息(STDERR)2重定向到一个名字为1的文件中,而非所想的(STDOUT)中。因此需要加&进行区分。就有了 2>&1 这样的用法:
find /etc -name passwd 2>&1 |less
有时候还能看到这样的用法:find /etc -name passwd &2>&1 | less
这里可以分解成
find /etc -name passwd & 表示前面的命令放到后台执行。
2>&1 | less 表示将错误信息重定向至标准输出,并用less进行分页显示
- linux shell 中的 2>&1 用法说明
- linux shell 中的 2>&1 用法说明
- Linux shell 中的2>&1
- Linux-2>&1 的用法说明
- linux 中shell编程中的test用法
- linux 中shell编程中的test用法
- linux 中shell编程中的test用法
- Linux shell脚本中shift的用法说明
- Linux shell脚本中shift的用法说明
- Linux shell脚本中shift的用法说明
- Linux shell中的2>&1含义
- linux shell变量说明
- linux shell用法(2)-- 日期显示(1)
- Makefile中的shell用法
- shell 中的printf用法
- shell中的EOF用法
- shell中的EOF用法
- Makefile中的shell用法
- AMD 显卡驱动程序官方下载
- 校验输入的内容是否为数字
- EventBus使用
- Javascript基础(3)
- SQL高级语句-INNER JOIN 关键字 在表中存在至少一个匹配时,INNER JOIN 关键字返回行。
- linux shell 中的 2>&1 用法说明
- memcached搭建缓存系统
- pycharm2016.3.2(64)注册码(亲测可用)
- iOS
- 07-图4 哈利·波特的考试 (25分)
- Android 防微信朋友圈功能
- C++成员变量初始化列表执行顺序
- c++第1次实验-模拟ATM机
- Linux系统常用指令