日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

shell脚本详解(十)——sed编辑器的使用方法

發布時間:2024/2/28 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell脚本详解(十)——sed编辑器的使用方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

shell腳本詳解(十)——sed編輯器的使用方法

  • 一、sed編輯器
  • 二、sed編輯器工作流程
    • 1、讀取:
    • 2、執行:
    • 3、顯示:
    • 4、注:
  • 三、命令格式
  • 四、常用選項
  • 五、常用操作
  • 六、使用地址
    • sed編輯器有2種尋址方式:
  • 七、刪除行
  • 八、替換
    • 1、格式
    • 2、4種替換標記
  • 九、插入

一、sed編輯器

  • sed是一種流編輯器,流編輯器會在編輯器處理數據之前基于預先提供的一組規則來編輯數據流。
  • sed編輯器可以根據命令來處理數據流中的數據,這些命令要么從命令行中輸入,要么存儲在一個命令文本文件中。

二、sed編輯器工作流程

1、讀取:

  • sed從輸入流 (文件、管道、標準輸入) 中讀取一行內容并存儲到臨時的緩沖區中(又稱模式空間,pattern space)

2、執行:

  • 默認情況下,所有的sed命令都在模式空間中順序地執行,除非指定了行的地址,否則sed命令將會在所有的行上依次執行。

3、顯示:

  • 發送修改后的內容到輸出流。在發送數據后,模式空間將會被清空。在所有的文件內容都被處理完成之前,上述過程將重復執行,直至所有內容被處理完。

4、注:

  • 在所有的文件內容都被處理完成之前,上述過程將重復執行,直至所有內容被處理完。
  • 默認情況下所有的sed命令都是在模式空間內執行的,因此輸入的文件并不會發生任何變化,除非是用重定向存儲輸出。

三、命令格式

四、常用選項

選項說明
-e或- -expression=表示用指定命令來處理輸入的文本文件,只有一個操作命令時可省略,一 般在執行多個操作命令使用
f或- -file=表示用指定的腳本文件來處理輸入的文本文件
h或- -help顯示幫助
-n、- -quiet或silent禁止sed編輯器輸出,但可以與p命令一起使用完成輸出
-i直接修改目標文本文件

五、常用操作

操作說明
s替換,替換指定字符
d刪除,刪除選定的行
a增加,在當前行下面增加一行指定內容
i插入,在選定行,上面插入一行指定內容
c替換,將選定行替換為指定內容
y字符轉換,轉換前后的字符長度必須相同
p打印,如果同時指定行,表示打印指定行;如果不指定行,則表示打印所有內容;如果有非打印字符,則以ASCII碼輸出。其通常與“-n”選項一起使用
=打印行號
l (小寫L)打印數據流中的文本和不可打印的ASCII字符(比如結束符$、制表符\t)

六、使用地址

sed編輯器有2種尋址方式:

  • 以數字形式表示行區間
  • 用文本模式來過濾出行

七、刪除行

八、替換

1、格式

2、4種替換標記

  • 數字:表明新字符串將替換第幾處匹配的地方
  • g:表明新字符將會替換所有匹配的地方
  • p:打印與替換命令匹配的行,與-n一起使用
  • w 文件:將替換的結果寫到文件中


九、插入

總結

以上是生活随笔為你收集整理的shell脚本详解(十)——sed编辑器的使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。