在启动后台程序时,为了能让屏幕输出的信息保存起来,需要用到重定向方法。把屏幕输出到特定的文件中保存。
在命令行中 : 0 表示标准输入 stdin, 1表示标准输出 stdout, 2表示错误stderr;
一般重定向命令中1默认值,可以不用明写:
> 后接 目标文件:
app.sh > out.txt 与 app.sh 1 > out.txt是一样的意思。
2 > &1 : &返回1(stdout)的引用, 即stderr重定向到stdout所打开的文件中,不用引用如下写法
2 > out.txt, 是一样的意思。
完整的命令行如下:
app.sh > out.txt 2 > & 1; 或者 app.sh 1>out.txt 2>err.txt;都可以
&>/dev/null 可以同时设置1,2 ;
linux下特殊的目标文件 /dev/null , 可以想象为一个无穷大的垃圾堆,不要的输出都可以扔给他,但是读取它就会返回一个错误。