亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

linux 命令中 > >>的區別?

linux 命令中 > >>的區別?

楊__羊羊 2018-07-11 17:14:12
linux 命令中 > >>的區別?
查看完整描述

2 回答

?
達令說

TA貢獻1821條經驗 獲得超6個贊

二者都是Linux系統的輸出重定向符號

">" 是輸出到文件中, 如果文件存在, 則原來的內容被清空, 不存在則創建文件, 比如

ls?> filelist.txt

">>"是把輸出追加到文件中, 如果文件存在, 追加到末尾, 不存在則創建文件
格式:
command-line1 [1-n] > file或文件操作符或設備
上面命令意思是:將一條命令執行結果(標準輸出,或者錯誤輸出,本來都要打印到屏幕上面的) 重定向其它輸出設備(文件,打開文件操作符,或打印機等等)1,2分別是標準輸出,錯誤輸出。
注意:
1、shell遇到”>”操作符,會判斷右邊文件是否存在,如果存在就先刪除,并且創建新文件。不存在直接創建。 無論左邊命令執行是否成功。右邊文件都會變為空。
2、“>>”操作符,判斷右邊文件,如果不存在,先創建。以添加方式打開文件,會分配一個文件描述符[不特別指定,默認為1,2]然后,與左邊的標準輸出(1)或錯誤輸出(2) 綁定。
3、當命令:執行完,綁定文件的描述符也自動失效。0,1,2又會空閑。
4、一條命令啟動,命令的輸入,正確輸出,錯誤輸出,默認分別綁定0,1,2文件描述符。
5、一條命令在執行前,先會檢查輸出是否正確,如果輸出設備錯誤,將不會進行命令執行

查看完整回答
反對 回復 2018-07-17
?
森欄

TA貢獻1810條經驗 獲得超5個贊

>與>>都用來重定向輸出,不同的是>將覆蓋原有內容,而>>則會追加內容。例如:ls?-l?/ > 123.txt 將會列出/目錄下的所有文件(目錄)并將輸出結果保存至123.txt中,如果123.txt里有內容456,那么這個456將會被覆蓋掉,而如果使用>>則這個456還會存在,命令的輸出結果保存至新的一行。

查看完整回答
反對 回復 2018-07-17
  • 2 回答
  • 0 關注
  • 664 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號