我們使用shell腳本,不可避免有些命令可能會自然的報錯,正常的shell腳本報錯會正常打印到終端的,如果不想要這些日志打印到終端,查了很多資料,常見的處理辦法有兩種:
1-將日志輸出轉移到指定文件中(如:垃圾回收站=/dev/null):
./test2.sh >/dev/null 2>&1
備注:
/dev/null : 可以理解為linux下的回收站;
> : 把標准輸出進行重定向;
2>&1 : 是把出錯輸出也重定向輸出;
2>&1命令解釋: 1 表示stdout標准輸出,系統默認值是1 2 表示stderr標准錯誤 & 表示等同於的意思,2>&1,表示2的輸出重定向等同於標准輸出1
2-將日志內容收集到參數變量中:
content=$(cat xxx.txt 2>&1) echo $content