linux重定向解決磁盤問題

最近/var空間總是報警,原由是/var/spool/clientmqueue下文件數量太多致使佔用空間很大,此空間下存放了大量的crontab運行而發送給root的郵件,能夠用如下步驟解決:
一、首先刪除此目錄下的幾天前的文件: find ./ -atime +3 -exec rm {} \;
二、在全部運行的crontab腳本後添加日誌重定向 >/dev/null 2>&1
 
對於LINUX的重定向,轉一篇比較好的說明文字:
Linux Shell 環境中支持輸入輸出重定向,用符號<和>來表示。0、1和2分別表示標準輸入、標準輸出和標準錯誤信息輸出,能夠用來指定須要重定向的標準輸入或輸出,好比 2>a.txt 表示將錯誤信息輸出到文件a.txt中。
同時,還能夠在這三個標準輸入輸出之間實現重定向,好比將錯誤信息重定向到標準輸出,能夠用 2>&1來實現。
Linux下還有一個特殊的文件/dev/null,它就像一個無底洞,全部重定向到它的信息都會消失得無影無蹤。這一點很是有用,當咱們不須要回顯程序的全部信息時,就能夠將輸出重定向到/dev/null。
若是想要正常輸出和錯誤信息都不顯示,則要把標準輸出和標準錯誤都重定向到/dev/null, 例如:
# ls 1>/dev/null 2>/dev/null
還有一種作法是將錯誤重定向到標準輸出,而後再重定向到 /dev/null,例如:
# ls >/dev/null 2>&1
注意:此處的順序不能更改,不然達不到想要的效果,此時先將標準輸出重定向到 /dev/null,而後將標準錯誤重定向到標準輸出,因爲標準輸出已經重定向到了/dev/null,所以標準錯誤也會重定向到/dev/null。
相關文章
相關標籤/搜索