sed 的使用方法

sed 用法

sed [參數] 'command' 輸入文本

常用選項:
-n : 使用安靜模式。在一般 sed 的用法中,所有來自 STDIN的資料一般都會被列出到螢幕上。但如果加上 -n 參數后,則只有經過sed 特殊處理的那一行(者動作)才會被列出來
-e ∶直接在指令列模式上進行 sed 的動作編輯;
-f ∶直接將 sed 的動作寫在一個檔案內, -f filename 則可以執(zhí)行 filename 內的sed 動作;
-r ∶sed 的動作支援的是延伸型正規(guī)表示法的語法。(預設是基礎正規(guī)表示法語法)
   =注意== -i ∶直接修改讀取的檔案內容,而不是由螢幕輸出。       

常用命令:
a   ∶新增, a 的后面可以接字串,而這些字串會在新的一行出現(目前的下一行)~
c   ∶取代, c 的后面可以接字串,這些字串可以取代 n1,n2 之間的行!
d   ∶刪除,因為是刪除啊,所以 d 后面通常不接任何咚咚;
i   ∶插入, i 的后面可以接字串,而這些字串會在新的一行出現(目前的上一行);
p   ∶列印,亦即將某個選擇的資料印出。通常 p 會與參數 sed -n 一起運作~
s   ∶取代,可以直接進行取代的工作哩!通常這個 s 的動作可以搭配正規(guī)表示法!例如 1,20s/old/new/g 就是啦!
例子:
 sed '1a drink tea\nor coffee' ab   #第一行后增加多行,使用換行符\n
 [root@localhost ruby] # sed '1c Hi' ab                #第一行代替為Hi     

查看本機開放的所有端口:
[root@scott 桌面]# netstat -tulpan
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      1704/rpcbind        
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1991/sshd           
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      1803/cupsd          
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      2077/master         
tcp        0      0 127.0.0.1:6010              0.0.0.0:*                   LISTEN      2383/sshd     
[root@scott 桌面]# netstat -tulpan | awk '{print $4}' | grep [0-9] | awk -F ':' '{print $NF}' | sort -nu   【grep [0-9]表示搜索包含數字的行】

刪除包含某些字符的行
[ansible@test56-pgpool2-node1 ~]$ cat file 
aaa
bbb
ccc
ddd
[ansible@test56-pgpool2-node1 ~]$ sed -i '/aaa/d' file
[ansible@test56-pgpool2-node1 ~]$ cat file 
bbb
ccc
ddd
在每行的末尾添加指定的字符
[ansible@test56-pgpool2-node1 ~]$ cat file 
bbb
ccc
ddd
[ansible@test56-pgpool2-node1 ~]$ sed -i 's/$/;/g' file
[ansible@test56-pgpool2-node1 ~]$ cat file 
bbb;
ccc;
ddd;

##########每行行首添加字符

sed -i  's/^/xxxxx/g'  file
刪除第n行
sed ‘Nd’ filename
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 本文承接之前寫的三十分鐘學會AWK一文,在學習完AWK之后,趁熱打鐵又學習了一下SED,不得不說這兩個工具真的堪稱...
    mylxsw閱讀 4,514評論 3 74
  • sed與awk實例 文本間隔 在每一行后面增加一空行 將原來的所有空行刪除并在每一行后面增加一空行。這樣在輸出的文...
    stuha閱讀 2,017評論 0 20
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數據革命閱讀 13,194評論 2 33
  • 基礎命令 主要的命令和快捷鍵 Linux系統(tǒng)命令由三部分組成:cmd + [options]+[operation...
    485b1aca799e閱讀 1,207評論 0 0
  • 《裕語言》速成開發(fā)手冊3.0 官方用戶交流:iApp開發(fā)交流(1) 239547050iApp開發(fā)交流(2) 10...
    葉染柒丶閱讀 28,721評論 5 20

友情鏈接更多精彩內容