国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

詳解Sed命令的用法與正則表達式元字符

2019-10-26 18:55:58
字體:
來源:轉載
供稿:網友

sed命令用法

sed是一種流編輯器,它是文本處理中非常有用的工具,能夠完美的配合正則表達式使用,功能不同凡響。處理時,把當前處理的行存儲在臨時緩沖區中,稱為『模式空間』(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有改變,除非你使用重定向存儲輸出。sed主要用來自動編輯一個或多個文件,簡化對文件的反復操作,編寫轉換程序等。

1.簡介

sed是非交互式的編輯器。它不會修改文件,除非使用shell重定向來保存結果。默認情況下,所有的輸出行都被打印到屏幕上。

sed編輯器逐行處理文件(或輸入),并將結果發送到屏幕。具體過程如下:首先sed把當前正在處理的行保存在一個臨時緩存區中(也稱為模式空間),然后處理臨時緩沖區中的行,完成后把該行發送到屏幕上。sed每處理完一行就將其從臨時緩沖區刪除,然后將下一行讀入,進行
處理和顯示。處理完輸入文件的最后一行后,sed便結束運行。sed把每一行都存在臨時緩沖區中,對這個副本進行編輯,所以不會修改原文件。

2.定址

定址用于決定對哪些行進行編輯。地址的形式可以是數字、正則表達式、或二者的結合。如果沒有指定地址,sed將處理輸入文件的所有行。

地址是一個數字,則表示行號;是“$"符號,則表示最后一行。例如:sed -n '$p' /etc/issue 

3.命令與選項

sed命令告訴sed如何處理由地址指定的各輸入行,如果沒有指定地址則處理所有的輸入行。

3.1 sed命令

a/

在當前行后添加一行或多行。多行時除最后一行外,每行末尾需用“/”續行    -a,只是顯示,如果要真的更改文本,就要sed -i.bak ''   這樣就會出來一個帶bak格式的文件,這個文件是源文件

[root@entos74 app]#cat -n passwd.txt | sed '10,20a/       11 adadadadadada '

c/

用此符號后的新文本替換當前行中的文本。多行時除最后一行外,每行末尾需用"/"續行

cat -n passwd.txt | sed '10c/XXXXXXXXXXXXXXXXXX'

  i/
    在當前行之前插入文本。多行時除最后一行外,每行末尾需用"/"續行
    cat -n passwd.txt | sed '10i/XXXXXXXXXXXXXXXXXX'
  d
  刪除行  :ss -ntl |sed '1d'       刪除第一行
  h
  把模式空間里的內容復制到暫存緩沖區  
  H
  把模式空間里的內容追加到暫存緩沖區
  g
  把暫存緩沖區里的內容復制到模式空間,覆蓋原有的內容

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁津县| 和顺县| 焉耆| 八宿县| 洛宁县| 松江区| 丰城市| 凉山| 灵宝市| 九龙坡区| 读书| 平定县| 介休市| 左权县| 民丰县| 三穗县| 天全县| 本溪市| 英吉沙县| 天气| 招远市| 洛浦县| 嘉荫县| 教育| 曲周县| 宝丰县| 弋阳县| 巫山县| 华亭县| 微博| 榆社县| 新疆| 东海县| 伊川县| 娱乐| 海原县| 山东省| 宜城市| 仁怀市| 汾阳市| 扎赉特旗|