Linux命令之Sed

以行為單位的新增/刪除

  • 刪除
#刪除2到5行
nl /etc/passwd  | sed '2,5d'
#刪除第三行
nl /etc/passwd | sed '3d'
#刪除從第三行開始到最后一行的行
nl /etc/passwd | sed '3,$d'
  • 新增

a->目標行后面添加,i ->目標行前面添加

nl /etc/passwd | sed '2a xuzhang' 
nl /etc/passwd | sed '2i xuzhang' 
#添加多行的話,每一行以\隔開就行
nl /etc/passwd | sed '2a xuzhang\
maitng'

以行為單位的替換與顯示

  • c
nl /etc/passwd | sed '2,5c No 2-5 number'
output:
1 root:x:0:0:root:/root:/bin/bash
No 2-5 number
6 sync:x:5:0:sync:/sbin:/bin/sync
.....(后面省略).....
  • p
#打印5~7行
nl /etc/passwd | sed -n '5,7p'
#將匹配到root的行進行打印
nl /etc/passwd | sed '/root/p'

數據的搜尋并刪除

#將有root的行進行刪除。
nl /etc/passwd | sed '/root/d'

搜尋并執行命令

#搜尋含有root的行,替換bash成blueshell,并將其打印,多個命令的話,用花括號,并將命令以;隔開。
nl /etc/passwd | sed -n '/root/{s/bash/blueshell/;p}'

數據查找并進行替換

sed 's/要被取代的字串/新的字串/g',g代表全局替換。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • sed工具簡介 用法:sed [-nefri] 動作參數:-n:使用安靜模式(Silent)模式,一般在sed的...
    Bloo_m閱讀 1,021評論 0 1
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數據革命閱讀 12,239評論 2 33
  • Linux sed命令是利用script來處理文本文件。sed可依照script的指令,來處理、編輯文本文件。Se...
    姜淑均閱讀 738評論 1 2
  • 這里介紹3種方式: awk處理文本(最常用): 作用:awk對數據以行分析并生成報告時顯得很強大,它將行進行切片,...
    cws閱讀 474評論 0 8
  • 內核的引導(BIOS OS Read /boot 內核文件) - 運行init(所有進程的父進程 /etc/ini...
    時待吾閱讀 611評論 0 1