linux Sed編輯器簡介

2021-05-25 05:23:48 字數 1247 閱讀 6721

1. sed簡介

3. sed命令

呼叫sed命令有兩種形式:

*sed [options] 'command' file(s)

*sed [options] -f scriptfile file(s)

a/在當前行後面加入一行文字。

b lable

分支到指令碼中帶有標記的地方,如果分支不存在則分支到指令碼的末尾。

c/用新的文字改變本行的文字。

d從模板塊(pattern space)位置刪除行。

d刪除模板塊的第一行。

i/在當前行上面插入文字。

h拷貝模板塊的內容到記憶體中的緩衝區。

h追加模板塊的內容到記憶體中的緩衝區

g獲得記憶體緩衝區的內容,並替代當前模板塊中的文字。

g獲得記憶體緩衝區的內容,並追加到當前模板塊文字的後面。

l列表不能列印字元的清單。

n讀取下乙個輸入行,用下乙個命令處理新的行而不是用第乙個命令。

n追加下乙個輸入行到模板塊後面並在二者間嵌入乙個新行,改變當前行號碼。

p列印模板塊的行。

p(大寫)

列印模板塊的第一行。

q退出sed。

r file

從file中讀行。

t label

if分支,從最後一行開始,條件一旦滿足或者t,t命令,將導致分支到帶有標號的命令處,或者到指令碼的末尾。

t label

錯誤分支,從最後一行開始,一旦發生錯誤或者t,t命令,將導致分支到帶有標號的命令處,或者到指令碼的末尾。

w file

寫並追加模板塊到file末尾。

w file

寫並追加模板塊的第一行到file末尾。

!表示後面的命令對所有沒有被選定的行發生作用。

s/re/string

用string替換正規表示式re。

=列印當前行號碼。

#把注釋擴充套件到下乙個換行符以前。

以下的是替換標記

*g表示行內全面替換。

*p表示列印行。

*w表示把行寫入乙個檔案。

*x表示互換模板塊中的文字和緩衝區中的文字。

*y表示把乙個字元翻譯為另外的字元(但是不用於正規表示式)

4. 選項

-e command, --expression=command

允許多台編輯。

-h, --help

列印幫助,並顯示bug列表的位址。

-n, --quiet, --silent

Linux sed行編輯器

基本工作模式 sed 命令預設列印匹配到的內容到螢幕 按照給定的指令碼命令,按行讀取文字中的內容,讀取到pattern space空間中進行編輯操作,未完成的編輯操作放到hold space 空間中,pattern space 再處理其他行,再次處理編輯時,就會從hold space 讀取到patt...

linux sed 流編輯器

流編輯器,是一種非互動式的編輯器,常用於指令碼書寫。sed編輯器可以根據輸入的命令列的命令或儲存在檔案中的命令處理資料。它,每次從輸入讀取一行資料,將該資料所提供的編輯器命令匹配,根據命令修改資料流中的資料,然後將新資料輸出到stdout。在流編輯器將全部命令和一行資料匹配完之後,它讀取下一行資料,...

linux sed流編輯器示例講解

本文結構 sed編輯器被稱作流編輯器 stream editor 跟普通互動式文字編輯器正好相反,它是用來過濾和進行文字轉換的。流編輯器會在編輯資料之前基於預先提供的一組規則來編輯資料流 sed原理 sed以文字的行為單位進行處理,一次處理一行內容。首先sed把當前處理的行儲存在臨時緩衝區中 稱為模...