sed常用的命令選項表
命令選項
功能描述
-r支援正規表示式
-i[suffix]
直接修改原始檔,如果設定了suffix 字尾名,sed會將資料備份
-n ,–silent
遮蔽預設輸出功能,預設sed會把匹配到的資料顯示到螢幕上
-e指定需要執行的sed 指令,支援使用多個帶 -e 引數
-f指定需要執行的指令碼,需要 提前將sed 指令寫入檔案中
sed 基本操作指令
基本操作指令
功能描述
p列印當前匹配資料行
l小寫l ,列印當前匹配的資料行(顯示控制字元,如回車)
=列印當前讀取的資料行
a text
匹配的資料行後追加文字內容
i text
匹配的資料行前追加文字內容
d刪除匹配的資料行整行內容
c text
將匹配的資料行整行內容替換為特定的內容
r filename
從檔案中讀取資料並追加到匹配的資料行後面
w filename
將匹配到的資料寫入特定的檔案中
q [exit code]
立刻退出sed 指令碼
s/regexp/replace/
使用正則匹配,將匹配到的資料替換為特定的內容
sed 指令執行前需要根據條件定位需要處理的資料行,如果沒有指定定位條件行,則預設sed 會對所有資料執行特定的指令。
sed 支援的資料定位方法
格式功能描述
number
直接根據行號匹配
first~step
從first 行開始,步長為step,匹配所有滿足條件的資料行
$匹配最後一行
/regexp/
使用正規表示式匹配資料行
\cregexpc
使用正規表示式匹配資料行,c 可以是任意字元
addr1,addr2
直接使用行號定位,匹配從addr1到addr2的所有行
addr1,+n
直接使用行號定位,匹配從addr1以及後面的n行
基本用法
sed 命令選項 '定位方式 基本操作' 操作檔案
# 先新建乙個text.txt 檔案 , 可以針對 txt 檔案進行查詢
#顯示第 1 、3 、5 行
sed -n '1p;3p;5p' text.txt
# 執行兩條 指令
sen -n -e '1p' -e '/text/l' text.txt
sed 高階指令
高階指令
功能描述
h將模式空間的資料複製到保留空間
h將模式空間的資料追加到保留空間
g將保留空間的資料複製到模式空間
g將保留空間的資料追加到模式空間
x將模式空間和保留空間的資料對調
n讀取下一行資料到模式空間
n讀取下一行資料追加到模式空間
y/原始檔/目標檔案
以字元為單位將源字元轉為目標字元
:label
為t或者b指令定義label標籤
t label
有條件跳轉到標籤(label),如果沒有label則跳轉到指令的結尾
b label
跳轉到標籤label ,如果沒有label 則跳轉到指令的結尾
Linux命令學習 sed
sed是乙個很好的檔案處理工具,本身是乙個管道命令,主要是以行為單位進行處理,可以將資料行進行替換 刪除 新增 選取等特定工作,下面先了解一下sed的用法 sed命令列格式為 sed nefri command 輸入文字 常用選項 n 使用安靜 silent 模式。在一般 sed 的用法中,所有來自...
Linux學習之sed命令詳解
sed是stream editor的簡稱,也就是流編輯器。它一次處理一行內容,處理時,把當前處理的行儲存在臨時緩衝區中,稱為 模式空間 pattern space 接著用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往螢幕。接著處理下一行,這樣不斷重複,直到檔案末尾。檔案內容並沒有 改變...
Sed命令學習
該文章 jims of 肥肥世家 table of contents 1.sed簡介 2.定址 3.sed命令 4.選項 5.元字符集 6.例項 7.指令碼 8.小技巧 可以通過定址來定位你所希望編輯的行,該位址用數字構成,用逗號分隔的兩個行數表示以這兩行為起止的行的範圍 包括行數表示的那兩行 如1...