linux之sed命令的用法
sed命令行格式為:
sed [-nefri] ‘command' 輸入文本
常用選項(xiàng):
-n∶使用安靜(silent)模式。在一般 sed 的用法中,所有來自 STDIN的資料一般都會(huì)被列出到螢?zāi)簧?。但如果加?-n 參數(shù)后,則只有經(jīng)過sed 特殊處理的那一行(或者動(dòng)作)才會(huì)被列出來。
-e∶直接在指令列模式上進(jìn)行 sed 的動(dòng)作編輯;
-f∶直接將 sed 的動(dòng)作寫在一個(gè)檔案內(nèi), -f filename 則可以執(zhí)行 filename 內(nèi)的sed 動(dòng)作;
-r∶sed 的動(dòng)作支援的是延伸型正規(guī)表示法的語(yǔ)法。(預(yù)設(shè)是基礎(chǔ)正規(guī)表示法語(yǔ)法)
-i∶直接修改讀取的檔案內(nèi)容,而不是由螢?zāi)惠敵觥?nbsp; 
常用命令:
a  ∶新增, a 的后面可以接字串,而這些字串會(huì)在新的一行出現(xiàn)(目前的下一行)~
c  :取代, c 的后面可以接字串,這些字串可以取代 n1,n2 之間的行!
d  :刪除,因?yàn)槭莿h除啊,所以 d 后面通常不接任何咚咚;
i  :插入, i 的后面可以接字串,而這些字串會(huì)在新的一行出現(xiàn)(目前的上一行);
p  :列印,亦即將某個(gè)選擇的資料印出。通常 p 會(huì)與參數(shù) sed -n 一起運(yùn)作~
s  :取代,可以直接進(jìn)行取代的工作哩!通常這個(gè) s 的動(dòng)作可以搭配正規(guī)表示法!例如 1,20s/old/new/g 就是啦!
舉例:(假設(shè)我們有一文件名為ab)
刪除某行
[root@localhost ruby] # sed '1d' ab #刪除第一行 
[root@localhost ruby] # sed '$d' ab #刪除最后一行
[root@localhost ruby] # sed '1,2d' ab   #刪除第一行到第二行
[root@localhost ruby] # sed '2,$d' ab   #刪除第二行到最后一行
顯示某行
.    [root@localhost ruby] # sed -n '1p' ab   #顯示第一行 
[root@localhost ruby] # sed -n '$p' ab   #顯示最后一行
[root@localhost ruby] # sed -n '1,2p' ab#顯示第一行到第二行
[root@localhost ruby] # sed -n '2,$p' ab#顯示第二行到最后一行
使用模式進(jìn)行查詢
[root@localhost ruby] # sed -n '/ruby/p' ab    #查詢包括關(guān)鍵字ruby所在所有行
[root@localhost ruby] # sed -n '/\$/p' ab#查詢包括關(guān)鍵字$所在所有行,使用反斜線\屏蔽特殊含義
增加一行或多行字符串
[root@localhost ruby]# cat ab
Hello!
ruby is me,welcome to my blog.
end
[root@localhost ruby] # sed '1a drink tea' ab  #第一行后增加字符串"drink tea"
Hello!
drink tea
ruby is me,welcome to my blog. 
end
[root@localhost ruby] # sed '1,3a drink tea' ab #第一行到第三行后增加字符串"drink tea"
Hello!
drink tea
ruby is me,welcome to my blog.
drink tea
end
drink tea
[root@localhost ruby] # sed '1a drink tea\nor coffee' ab   #第一行后增加多行,使用換行符\n
Hello!
drink tea
or coffee
ruby is me,welcome to my blog.
end
代替一行或多行
[root@localhost ruby] # sed '1c Hi' ab#第一行代替為Hi
Hi
ruby is me,welcome to my blog.
end
[root@localhost ruby] # sed '1,2c Hi' ab#第一行到第二行代替為Hi
Hi
end
替換一行中的某部分
格式:sed 's/要替換的字符串/新的字符串/g'   (要替換的字符串可以用正則表達(dá)式)
[root@localhost ruby] # sed -n '/ruby/p' ab | sed 's/ruby/bird/g'    #替換ruby為bird
[root@localhost ruby] # sed -n '/ruby/p' ab | sed 's/ruby//g'#刪除ruby
插入
[root@localhost ruby] # sed -i '$a bye' ab #在文件ab中最后一行直接輸入"bye"
[root@localhost ruby]# cat ab
Hello!
ruby is me,welcome to my blog.
end
bye
上一篇:C++中的friend友元函數(shù)詳細(xì)解析
欄 目:C語(yǔ)言
下一篇:C#委托所蘊(yùn)含的函數(shù)指針概念詳細(xì)解析
本文標(biāo)題:linux之sed命令的用法
本文地址:http://www.jygsgssxh.com/a1/Cyuyan/4029.html
您可能感興趣的文章
- 01-10APUE筆記之:進(jìn)程環(huán)境詳解
 - 01-10內(nèi)部排序之堆排序的實(shí)現(xiàn)詳解
 - 01-10深入解析Linux下\r\n的問題
 - 01-10進(jìn)程間通信之深入消息隊(duì)列的詳解
 - 01-10Linux線程管理必備:解析互斥量與條件變量的詳解
 - 01-10Linux C 獲取進(jìn)程退出值的實(shí)現(xiàn)代碼
 - 01-10解析Linux下的時(shí)間函數(shù):設(shè)置以及獲取時(shí)間的方法
 - 01-10深入探討linux下進(jìn)程的最大線程數(shù)、進(jìn)程最大數(shù)、進(jìn)程打開的文
 - 01-10基于linux下獲取時(shí)間函數(shù)的詳解
 - 01-10linux c 查找使用庫(kù)的cflags與libs的方法詳解
 


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
 - 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
 - 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問題方法
 - 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
 - 5c語(yǔ)言計(jì)算三角形面積代碼
 - 6什么是 WSH(腳本宿主)的詳細(xì)解釋
 - 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
 - 8正則表達(dá)式匹配各種特殊字符
 - 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
 - 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
 
本欄相關(guān)
- 04-02c語(yǔ)言函數(shù)調(diào)用后清空內(nèi)存 c語(yǔ)言調(diào)用
 - 04-02func函數(shù)+在C語(yǔ)言 func函數(shù)在c語(yǔ)言中
 - 04-02c語(yǔ)言的正則匹配函數(shù) c語(yǔ)言正則表達(dá)
 - 04-02c語(yǔ)言用函數(shù)寫分段 用c語(yǔ)言表示分段
 - 04-02c語(yǔ)言中對(duì)數(shù)函數(shù)的表達(dá)式 c語(yǔ)言中對(duì)
 - 04-02c語(yǔ)言編寫函數(shù)冒泡排序 c語(yǔ)言冒泡排
 - 04-02c語(yǔ)言沒有round函數(shù) round c語(yǔ)言
 - 04-02c語(yǔ)言分段函數(shù)怎么求 用c語(yǔ)言求分段
 - 04-02C語(yǔ)言中怎么打出三角函數(shù) c語(yǔ)言中怎
 - 04-02c語(yǔ)言調(diào)用函數(shù)求fibo C語(yǔ)言調(diào)用函數(shù)求
 
隨機(jī)閱讀
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
 - 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
 - 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
 - 01-10C#中split用法實(shí)例總結(jié)
 - 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
 - 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
 - 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
 - 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
 - 01-10delphi制作wav文件的方法
 - 04-02jquery與jsp,用jquery
 


