1. 程式人生 > >sed命令例子詳解

sed命令例子詳解

moved 輸入 size 字母轉 amp sep def cde family

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命令例子詳解