sed是一種幾乎包括在所有unix平台(包括linux)的輕量級流編輯器。sed主要是用來將資料進行選取、替換、刪除、新增的命令
注意:vi命令只能修改檔案,但不能修改命令的結果
,如修改df結果的內容,sed的好處是不僅可以修改檔案,而且可以從管道符接收資料來進行操作(修改命令的結果)
sed [選項] '[動作]' 檔名
選項:-n: 一般sed命令會把所有資料都輸出到螢幕,如果加入此選擇,則只會把經過sed命令處理的行輸出到螢幕
-e: 允許對輸入資料應用多條sed命令編輯
-i: 用sed的修改結果直接修改讀取資料的檔案,而不是由螢幕輸出(不光輸出更改,原始檔也會修改)
動作:a \: 追加,在當前行後新增一行或多行。新增多行時,除最後一行外,每行末尾需要用"\"代表資料未完結
c\: 行替換,用c後面的字串替換原資料行,替換多行時,除最後一行外,每行末尾需用"\"代表資料未完結
i\: 插入,在當前行前插入一行或多行。插入多行時,除最後一行外,每行末尾需要用"\"代表資料未完結
d: 刪除,刪除指定的行
p: 列印,輸出指定的行
s: 字元替換,用乙個字串替換另外乙個字串。格式為"行範圍s/舊字串/新字串/g" (和vim中的替換格式類似)
檢視檔案的第二行(不加-n,不僅把sed處理的行輸出到螢幕,還會把所有的資料輸出到螢幕,加了-n只會輸出sed處理的行)
處理命令的執行結果(放在管道符後)
刪除第二行到第四行的資料,但不修改檔案本身
在第二行後追加hello
在第二行前插入兩行資料
替換第二行
#sed 's/舊字串/新字串/g' 檔名
把第3行的74替換成99
把第3行的74替換成99,並直接寫入檔案
多個條件同時替換,同時把"liming"和"gao"替換為空
sed 輕量級流編輯器
sed是一種幾乎包括在所有unix平台 包括linux 的輕量級流編輯器。sed主要是用來將資料進行選取 替換 刪除 新增的命令 注意 vi命令只能修改檔案,但不能修改命令的結果,如修改df結果的內容,sed的好處是不僅可以修改檔案,而且可以從管道符接收資料來進行操作 修改命令的結果 sed 選項 ...
sed流編輯器
sed預設不編輯原始檔,僅對模式空間中的資料做處理 而後,處理結束後,將模式空間中的內容列印至螢幕。sed options addresscommand file.用行,和命令一起來操作文字 options n 靜默顯示,不再顯示模式空間中的內容 i 直接修改原檔案 e 指令碼 e指令碼 可以同時執...
sed 流編輯器
sed 模式空間 預設不編輯原檔案,僅對模式空間中的資料做處理 而後,處理結束後,將模式空間列印至螢幕 sed options addresscommand file n 靜默模式,不再預設顯示模式空間中的內容 i 直接修改原檔案 e script e script 可以同時執行多個指令碼 f pa...