OUTPUT
> 以覆蓋的方式將正確的數據輸出到指定的文件或設備上
>> 以累加的方式將正確的數據輸出到指定的文件或設備上
2> 以覆蓋的方式將錯誤的數據輸出到指定的文件或設備上
2>> 以累加的方式將錯誤的數據輸出到指定的文件或設備上
eg: ls -l > ~/lsResu.txt
ls -l /etc/123 2> ~/lsResu.txt
ls -l /etc/123 > ~/lsRightResu.txt 2> ~/lsErrorResu.txt
如果想將正確和錯誤的數據輸出到同一文件上呢?^_^
ls -l /etc/123 > ~/lsResu.txt 2>&1
ls -l /etc/123 &> ~/lsResu.txt
如果不想要錯誤信息也不顯示呢?
ls -l /etc/123 2> /dev/null
INPUT
< 需要數據的地方由文件內容代替 (需要 ^ + D 來結束輸入)
<< 以某個字符串結束輸入
eg: cat > testDoc.txt < ~/.bashrc
cat > testDoc.txt < END
ELSE
如果你想執行完一個命令后自動執行下一個命令呢?
eg: ls -l; date
判斷依據
&& 從左往右執行,有錯誤時結束
|| 從左往右右執行,有正確時結束(或自然結束)
eg: mkdir /etc/123 && ls -l /etc/123
ls -l /etc/123 2> /dev/null || (mkdir /etc/123 && ls -l /etc/123) //如果存在 /etc/123 則輸出結果,不存在則創建并輸出,創建時出錯則不輸出
ps: 整理后果然有很大的收獲喲 ^_^
新聞熱點
疑難解答