command >/dev/null 2>&1 解说

0:表示键盘输入(stdin)
1:表示标准输出(stdout),系统默认是1 
2:表示错误输出(stderr)

command >/dev/null 2>&1 &  == command 1>/dev/null 2>&1 &

1)command:表示shell命令或者为一个可执行程序
2)>:表示重定向到哪里 
3)/dev/null:表示Linux的空设备文件 
4)2:表示标准错误输出
5)&1:&表示等同于的意思,2>&1,表示2的输出重定向等于于1
6)&:表示后台执行,即这条指令执行在后台运行

1>/dev/null:表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,不显示任何信息。
2>&1:表示标准错误输出重定向等同于标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设
件。


这条命令的意思就是在后台执行这个程序,并将错误输出2重定向到标准输出1,然后将标准输出1全部放到/dev/null文件,也就是清空.
所以可以看出" >/dev/null 2>&1 "常用来避免shell命令或者程序等运行中有内容输出。

时间: 2024-10-08 10:29:06

command >/dev/null 2>&1 解说的相关文章

command >/dev/null 2>&1 & 解释

0:表示键盘输入(stdin)1:表示标准输出(stdout),系统默认是1 2:表示错误输出(stderr) command >/dev/null 2>&1 & 1)command:表示shell命令或者为一个可执行程序2)>:表示重定向到哪里 3)/dev/null:表示linux的空设备文件 4)2:表示标准错误输出5)&1:&表示等同于的意思,2>&1,表示2的输出重定向等于于16)&:表示后台执行,即这条指令执行在后台运行

/dev/null脚本中作用

/dev/null设备文件只有一个作用,往它里面写任何数据都直接丢弃. 因此保证了该命令执行时屏幕上没有任何输出. 在shell中常见. command  > /dev/null   2>&1 command的标准输出重定向到/dev/null,该命令可能产生的错误信息也重定向到标准输出(用&1标识) 相同的文件即/dev/null中. 注意:文件描述符数字写到重定向符号右边需要加&号,否则被解释成文件名. 2>&1其中的>左右两边不能有空格.

shell中>/dev/null 2>&1

本文转自http://www.kissyu.org/ 背景 我们经常能在shell脚本中发现>/dev/null 2>&1这样的语句.以前的我并没有去深入地理解这段命令的作用,照搬照用,直到上周我将这段命令不小心写成了2>&1 >/dev/null,出了一点小问题之后,我才开始去了解这段命令背后的"玄机". shell重定向介绍 就像我们平时写的程序一样,一段程序会处理外部的输入,然后将运算结果输出到指定的位置.在交互式的程序中,输入来自用户的键

Linux下" >/dev/null 2>&1 "相关知识说明

在学习Linux的过程中,常会看到一些终端命令或者程序中有">/dev/null 2>&1 "出现,由于已经遇到了好几次了,为了理解清楚,不妨花点时间百度或者google一下相关的知识. 0:表示键盘输入(stdin)1:表示标准输出(stdout),系统默认是1 2:表示错误输出(stderr) command >/dev/null 2>&1 &  == command 1>/dev/null 2>&1 &

【Shell脚本学习24】Shell输入输出重定向:Shell Here Document,/dev/null文件

Unix 命令默认从标准输入设备(stdin)获取输入,将结果输出到标准输出设备(stdout)显示.一般情况下,标准输入设备就是键盘,标准输出设备就是终端,即显示器. 输出重定向 命令的输出不仅可以是显示器,还可以很容易的转移向到文件,这被称为输出重定向. 命令输出重定向的语法为: $ command > file 这样,输出到显示器的内容就可以被重定向到文件. 例如,下面的命令在显示器上不会看到任何输出: $ who > users 打开 users 文件,可以看到下面的内容: $ cat

/dev/null 文件

/dev/null 文件 如果希望执行某个命令,但又不希望在屏幕上显示输出结果,那么可以将输出重定向到 /dev/null: $ command > /dev/null /dev/null 是一个特殊的文件,写入到它的内容都会被丢弃:如果尝试从该文件读取内容,那么什么也读不到.但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果. 如果希望屏蔽 stdout 和 stderr,可以这样写: $ command > /dev/null 2&

">/dev/null 2>&1 "是什么意思

在Linux中: 0:表示键盘输入(stdin) 1:表示标准输出(stdout),系统默认是1 2:表示错误输出(stderr) shell命令:command >/dev/null  2>&1  &  等同于   command 1>/dev/null 2>&1  & 1)command:表示shell命令或一个可执行的程序 2)>:表示重定向到 3)/dev/null:表示Linux的空设备文件 4)2:表示标准错误输出 5)&1

2>&1 >/dev/null & 与/dev/null 2>&1含义

/dev/null 代表空设备文件 > 代表重定向到哪里,例如:echo "123" > /home/123.txt 1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null" 2 表示stderr标准错误 & 表示等同于的意思,2>&1,表示2的输出重定向等同于1 1>/dev/null 首先表示标准输出重定向到空设备文件,也就是不输出任何信息到

>/dev/null 2>&1的含义

转帖:http://www.cnblogs.com/dkblog/archive/2009/07/31/1980722.html os.system("/etc/init.d/winbind stop >/dev/null 2>&1") >/dev/null 将输出重定向到/dev/null,这是个空设备,也就是忽略其输出.2>&1 是将错误输出到标准输出,如果在控制台调试,也就是屏幕上,方便调试.有3个默认的i/o,0是标准输入,一般是键盘:1