3.2 命令行選項
完整格式調用sed:
sed OPTIONS... [SCRIPT] [INPUTFILE...]sed可能被以下命令行選項調用: --version:列印版本信息。
--help:列印簡要幫助信息並退出。
-n、--quiet、--silent:只輸出明確處理過的內容。
-e script 、--expression=script:指定腳本。
-f script-file、--file=script-file:指定腳本文件。
-i[SUFFIX]、--in-place[=SUFFIX]:在原文件上修改並取代原文件。這一選項暗含-s。
-l N、--line-length=N:指定「l」命令的換行期望長度。長度為0則意味著不含長換行。如果不指定,則換行長度為70。
--posix:GUN sed包含了幾個擴展POSIX sed。為了簡化書寫這些便攜腳本,這個選項禁用了這個手冊所有的擴展以及附加命令。擴展中被POSIX執行的外部語法大部分接受sed程序,但是以上這些中的一些(例如在報告bug中的N命令描述的行為)事實上違反了標準。如果你需要禁用後期的擴展,你可以設置POSIXLY_CORRECT 變量為以非空值。
-b、--binary:這個選項在每個平臺都是可用的,僅僅在作業系統中區分文本文件與二進位文件起到作用。
--follow-symlinks:這個選項僅在支持符號連接且對選項-i被指定有影響的情況下可用。在這種情況下,如果被指定文件在命令行中是一個符號連接,sed將跟隨連接並編輯連接的最終目標文件。默認行為是中斷符號連接,因此連接目標將不被修改。
-E、-r:擴展正則表達式。
-s、--separate:在上文中已經舉過例子,當處理多個輸入文件,一般會被合併成一個文件來處理。使用這個選項則可以讓sed把各個文件分開單獨處理。
--sandbox:沙盒,在沙盒模式,e/w/r命令被拒絕-如果程序包含它們則還沒運行時它們將丟棄。沙盒模式確保了sed在輸入文件上的操作運行在指定的命令行上,而不能運行在外部命令上。
-u、--unbuffered:從輸入文件讀取最少的數據,更頻繁的刷新輸出。這將特別有用,特別像在tail -f這種情況下,能夠讓我們儘快地看出輸出結果。
-z、--null-data、--zero-terminated:把輸出看作一個一個被0位元組(如:ASCII中的「NULL」)的中斷符代替新行的集合。這個選項常和「sort -z」和「find -print0」一起使用。
3.3退出狀態
0:成功結束。
1:無效命令、無效語法、無效正則表達式、無效的帶--posix的sed擴展命令
2:一個或多個被指定的輸入文件不能在命令行中被打開。
4:I/O錯誤或運行時一個嚴重進程錯誤,GUN sed 被立即終止。