Shell的>/dev/null、2>&1、2>1
转载自:http://dos2unix.cn/link/480
1. 标准输入stdin文件描述符为0,标准输出stdout文件描述符为1,标准错误stderr文件描述符为2
2. /dev/null 空设备,相当于垃圾桶
3. 重定向符号:>
3. 2>1 与 2>&1 的区别
- 2>1, 把标准错误stderr重定向到文件1中
- 2>&1,把标准错误stderr重定向到标准输出stdout
4. 举例:
假设有脚本test.sh,内容如下,t是一个不存在的命令,执行脚本进行下面测试。
1
2
3
|
# cat test.sh
t
date
|
标准输出重定向到log,错误信息输出到终端上,如下:
1
2
3
4
|
# ./test.sh > log
./test.sh: line 1: t: command not found
# cat log
Thu Oct 23 22:53:02 CST 2008
|
删除log文件,重新执行,这次是把标准输出定向到log,错误信息定向到文件1
1
2
3
4
5
6
7
|
# ./test.sh > log 2>1
#
# cat log
Thu Oct 23 22:56:20 CST 2008
# cat 1
./test.sh: line 1: t: command not found
#
|
把标准输出重定向到log文件,把标准错误重定向到标准输出,也就是把错误信息和输出信息全都重定向到log里面
1
2
3
4
5
6
|
# ./test.sh > log 2>&1
#
# cat log
./test.sh: line 1: t: command not found
Thu Oct 23 22:58:54 CST 2008
#
|
把错误信息重定向到空设备
1
2
3
|
# ./test.sh 2>/dev/null
Thu Oct 23 23:01:07 CST 2008
#
|
把标准输出重定向到空设备
1
2
3
|
# ./test.sh >/dev/null
./test.sh: line 1: t: command not found
#
|
把标准输出和标准错误全重定向到空设备
1
2
|
#./test.sh >/dev/null 2>&1
#
|
把标准输出和标准错误全重定向到空设备
1
2
|
#./test.sh >/dev/null 2>&1
#
|
Shell的>/dev/null、2>&1、2>1的更多相关文章
- shell之“>/dev/null 2>&1”
shell之“>/dev/null 2>&1” http://ixdba.blog.51cto.com/2895551/526442 今天在自己的一个技术群中又被问道了这么一个问题 ...
- Shell脚本 /dev/null 2>&1详解
Shell脚本---- /dev/null 2>&1详解 1.可以将/dev/null看作"黑洞". 它非常等价于一个只写文件. 所有写入它的内容都会永远丢失. ...
- Shell脚本———— /dev/null 2>&1详解
1.可以将/dev/null看作"黑洞". 它非常等价于一个只写文件. 所有写入它的内容都会永远丢失. 而尝试从它那儿读取内容则什么也读不到. 然而, /dev/null对命令行和 ...
- shell之“>/dev/null 2>&1” 详解(转)
今天在自己的一个技术群中又被问道了这么一个问题,于是又通俗的解释了一下,做个记录,大家看看解释是否清楚! shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以 ...
- Linux Shell下”>/dev/null 2>&1“相关知识说明
0:表示键盘输入(stdin)1:表示标准输出(stdout),系统默认是1 2:表示错误输出(stderr) command >/dev/null 2>&1 & == ...
- [转]Linux Shell 1>/dev/null 2>&1 含义
shell中可能经常能看到:echo log > /dev/null 2>&1 命令的结果可以通过%>的形式来定义输出 /dev/null :代表空设备文件> :代表 ...
- shell中>/dev/null 2>&1
本文转自http://www.kissyu.org/ 背景 我们经常能在shell脚本中发现>/dev/null 2>&1这样的语句.以前的我并没有去深入地理解这段命令的作用,照搬 ...
- linux下详解shell中>/dev/null 2>&1
前言 相信大家经常能在shell脚本中发现>/dev/null 2>&1这样的语句.以前的我并没有去深入地理解这段命令的作用,照搬照用,直到上周我将这段命令不小心写成了2>& ...
- shell 中>/dev/null 2>&1含义
shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以通过%>的形式来定义输出 分解这个组合:“>/dev/null 2>&1” 为五 ...
随机推荐
- Linux下chkconfig命令详解转载
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--ad ...
- C语言的f(open)函数(文件操作/读写)
头文件:#include <stdio.h> fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为: FILE * fopen(const char * path, ...
- MVC的简单初步学习(2)
今天似乎一切是正常的,我们的课依旧在进行着,但是恍惚脑海中并没有那样的平静,不知道在想些什么?而且今天是学习MVC的初步开始,我应该认真地学习才是正确的啊.但是我并不糊涂,今天是周一,也就是刚开始上课 ...
- PHP中const和define()定义常量的细节区别
转自:http://www.365mini.com/page/difference-of-define-and-const.htm 众所周知,在PHP中(php 4及以后),我们可以使用函数defin ...
- SpringMVC温故知新
1. SpringMVC流程简记 (1) 用户发送请求至前端控制器DispatcherServlet (2) DispatcherServlet收到请求调用HandlerMapping处理器映射器 ( ...
- Elasticsearch学习之多种查询方式
1. query string search 搜索全部商品:GET /ecommerce/product/_search took:耗费了几毫秒 timed_out:是否超时,这里是没有 _shard ...
- jenkins部署war包到远程服务器的tomcat
一.目的 jenkins上将war包,部署到远程服务器的tomcat上. 这边tomcat在windows 主机A上,版本apache-tomcat-8.5.23. jenkins在主机B上,cent ...
- Jdk提供的动态代理示例
package com.jiaoyiping.util.demo; import java.lang.reflect.InvocationHandler; import java.lang.refle ...
- C语言位操作--判断两整数是否异号
判断两整数是否异号: int x, y; //输入比较的两数 bool f = ((x ^ y) < 0); // 返回真,当且仅当x与y异号 说明:当x.y异号,x与y的最高位分别为0和1,取 ...
- linux中守护进程启停工具start-stop-daemon
1.功能作用 启动和停止系统守护程序 2.位置 /sbin/start-stop-daemon 3.主要参数 Commands: -S|--start -- <argument> ... ...