sed命令例子詳解
sed -e ‘/Patricia/h‘ -e ‘/Margot/x‘ datafile 包含Margot的行將被包含Patricia的行替換;
sed -e /WE/{h;d;}‘ -e ‘/CT/{g;}‘ datafile 所有包含WE模式的行將移動到包含CT的行並進行覆蓋;
sed -e ‘/northeast/h‘ -e ‘$g‘ datafile 包含模式northeast的行被復制並被用來替換文件的最後一行;
sed -e ‘/WE/{h;d;}‘ -e ‘/CT/{G;}‘ datafile 所有包含模式WE的行都被移出原位置,移動到包含CT的行後面;
sed -e ‘/northeast/h‘ -e ‘$g‘ datafile 所有包含northeast的行都被復制並追加到文件尾部;
sed ‘/Lewis/{s/Lewis/Joseph/;q;}‘ datafile 在某行匹配到Lewis時,s表示先用Joseph替換Lewis,然後q命令讓sed程序退出;
sed ‘5q‘ datafile 打印完第五行之後退出,q命令讓sed程序退出;
sed ‘1,3y/abcdefghijklmnoprstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/’ datafile y命令把1-3行中所有的小謝字母轉換成大寫,正則表達式元字符對y命令不起作用。與替換分隔符一樣斜杠可以被替換成其他字符;
sed ‘/eastern/{n;s/AM/Archie/;}’ datafile 如果在某一行匹配到模式eastern,n命令就指示sed用下一個輸入行(即包含AM Main Jr的那行)替換模式空間中的當前行,並用Archie替換該行中的AM,然後打印該行,再繼續往下處理
sed ‘/eastern/c THE EASTERN REGION HAS BEEN TEMPARIangLY CLOSED’ datafile 如果模式eastern被匹配,c命令將用後面的文本替換包含eastern所在的行;
sed ‘/eastern/i NEW ENGLAND REGION‘ datafile 如果在某一行匹配到eastern,i命令就在該行的上方插入命令中i後面的文本;
sed ‘/^north /a THE NORTH SALES DISTRINCT HAS MOVED‘ datafile a後面的文本被追加在以north開頭並跟一個空格的行的後面一行;
sed -n ‘/north/w newfile‘ datafile 文件datafile中所有包含模式north的行都被寫到文件newfile中;
sed -e ‘1,3d‘ -e ‘s/Hemenway/Jones/‘ datafile 第一重編輯刪除1-3行,第二重編輯在刪除之後的內容中將Hemenway用Jones進行替換;
sed ‘/west/,/east/s/$/**VACA**/‘ datafile 修改模式east和west之間的所有行,將各行的行尾($)替換字符**VACA**;
sed -n ‘5,/^north‘east/p‘ datafile 打印從第五行到第一個以northeast開頭 的行之間的所有行;
sed -n ‘/west/,/east/p‘ datafile 打印模式west和east之間的所有行,如果w est出現在east之後的某一行,則打印範圍從west所在的行開始,到下一個出現east的行或者文件末尾;
sed -n ‘s/Hemenway/Jones/gp‘ datafile 文件中出現所有Hemenway都被替換成Jones,只有發生變化的行才被打印。選項-n與命令p結合取消默認的輸出;
sed ‘s#3#88#g‘ datafile 新的分隔符;
sed -n ‘s/\(Mar\)got/\1ianne/p‘ datafile 包含在圓括號中的Mar作為標簽1保存於特定的寄存器中,替換串可通過\1引用;
sed ‘s/[0-9][0-9]$/&.5/‘ datafile 所有以兩位數結尾的後面加.5;
sed -n ‘s/^west/north/p‘ datafile 找到以west行首的行並將其替換為north,才打印此行;
sed ‘s/west/north/g‘ datafile 全局替換;
sed命令例子詳解