shell尤其是crontab命令中经常发现类似下面的语句
cd /u01/ && bash ha_status.sh >>/u01/ha_status.log 2>&1
bash center.sh >/dev/null 2>&1 &
其中的>>和>分别代表重定向,前者表示在文件末尾添加不影响原内容,后者表示删除原内容添加新的内容,这个大家都理解
解释:本来shell的所有输出都是输出到屏幕的,包括echo print 和错误输出等都是面向屏幕的
用>>来指定输出重定向到文件
用2>&1:来指定将标准错误输出重定向到标准输出,而标准输出又重定向到了文件,所以整体意思就是把标准输出和标准错误输出都重定向到文件中
2代表标准错误输出,1代表标准输出
/dev/null :表示的回收站的意思,也就是把标准输出扔掉,后面加上2>&1 整体表示把标准输出和标准错误输出都扔掉
最后的&:代表让脚本在后台运行