命令行的語法:
command [options] script filename
script就是告訴程序做什麼的地方。至少要包含一行指令。短的腳本可以在命令行中指定,長的腳本通常放在容易被修改和測試的文件中。
每個指令包含兩部分:模式和過程;模式是由(/)分隔的正則表達式,過程指定一個或多個將被執行的動作。
當讀取輸入的每一行時,命令行讀取腳本中的第一個指令並檢測當前行的模式。如果沒有匹配,這個過程被忽略並讀取下一個指令。如果有一個匹配,那麼執行過程中指定的一個或多個動作。讀取所有的指令,而不是讀取與輸入行匹配的第一條指令。當所有可用指令被解釋並應用於單個行後,sed輸出改行並循環處理每個輸入行。
過程由類似於行編輯器中使用的那些編輯命令組成。大部分命令由單個字母組成。
多重指令方式有3種:
1,用分號分隔指令
sed 's/MA/, Massachusetts/; s/ PA/, Pennsylvania/' list
2,在每個指令前放置-e
sed -e 's/MA/, Massachusetts/' -e 's/ PA/, Pennsylvania/' list
3,使用Bourne Shell 的分行指令功能。在輸入單引號後按回車鍵,就會出現多行輸入的提示符(>)
阻止輸入行的自動顯示:
sed的默認操作是輸出每個輸入行。-n選項可以阻止自動輸出。當指定該選項時,每個要生成輸出的指令都必須包含打印命令p。