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