1、在bash中标准输出可以用1来表示;通常来说这个1可以省略; 如./xxx >/dev/null 和 ./xxx 1>/dev/null 是一个意思
2、在bash中标准错误输出可以用2来表示。
例子:
test.py 内容如下:
#!/bin/env python3.5 import sys if __name__=="__main__": sys.stdout.write("this is stdout ") sys.stderr.write("this is stderr ")
1、test.py输出样例
[root@mhamaster ~]# ./test.py this is stdout this is stderr
2、重定向标准输出到/dev/null
[root@mhamaster ~]# ./test.py >/dev/null
this is stderr
[root@mhamaster ~]# ./test.py 1>/dev/null
this is stderr
3、重定向标准错误输出到/dev/null
[root@mhamaster ~]# ./test.py 2>/dev/null this is stdout
4、如果是用nohup来启动test.py程序的、那么默认test.py的输出会被保存到nohup.out文件中去,如果输出比较小的话没有问题,如果输出比较多就占空间了;我们还
是可以把输出定向到/dev/null中去的
nohup ./test.py >/dev/null 2>&1 &