青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統計

最新評論

Sed --- 轉

Sed是非交互式的行編輯器. 它即可以從stdin中接收文本輸入, 也可以從文件中接收文本輸入, 它對輸入中的指定行進行特定的操作, 一行操作一次, 然后將結果輸出到stdout, 或輸出到文件中. 在shell腳本中使用的話, sed通常都是作為管道工具鏈中的一個處理部分來使用.

Sed會決定它需要處理那些行, 因為sed的參數就包含有地址范圍. [1] 既可以通過行號來指定地址范圍, 也可以通過模式匹配來決定地址范圍. 比如, 3d表示sed會刪除輸入的第3行, /windows/d表示sed會刪除掉所有匹配"windows"的輸入行.

對于sed工具包的所有操作來說, 我們最關心的其實就是3個最主要的操作. 分別是printing(打印到stdout), deletion(刪除), 和substitution(替換).


表格 C-1. 基本sed操作

操作符 名字 效果
[地址范圍]/p 打印 打印[指定的地址范圍]
[地址范圍]/d 刪除 刪除[指定的地址范圍]
s/pattern1/pattern2/ 替換 將指定行中, 將第一個匹配到的pattern1, 替換為pattern2.
[地址范圍]/s/pattern1/pattern2/ 替換 地址范圍指定的每一行中, 將第一個匹配到的pattern1, 替換為pattern2.
[地址范圍]/y/pattern1/pattern2/ transform 地址范圍指定的每一行中, 將pattern1中的每個匹配到pattern2的字符都使用pattern2的相應字符作替換. (等價于tr命令)
g 全局 在每個匹配的輸入行中, 將每個模式匹配都作相應的操作. (譯者注: 不只局限于第一個匹配)

 

Note

除非在替換命令的后邊明確指定選項g(全局), 否則的話, 替換操作只會替換掉每行上的第一個模式匹配實例.

如果在命令行或腳本中使用這個命令, sed操作可能還需要某些選項和引用.

 

  1 sed -e '/^$/d' $filename
  2 # -e選項, 將會使得后邊的字符被看作為編輯指令. 
  3 #  (如果只給"sed"傳遞了單個指令, 那么"-e"是可選的.)
  4 #  "強"引用('')將會保護指令中的RE(正則表達式)字符串, 
  5 #+ 也就是防止腳本將RE重新解釋為特殊字符. 
  6 # (這會為sed命令, 保存指令的RE表達式.)
  7 #
  8 # 將會對文件$filename中的文本進行操作. 

 

在某些特定的情況下, sed編輯命令將不會和單引號的強引用一起工作.

 

  1 filename=file1.txt
  2 pattern=BEGIN
  3 
  4   sed "/^$pattern/d" "$filename"  # 工作正常. 
  5 # sed '/^$pattern/d' "$filename"    就會出現異常的結果. 
  6 #        在這個實例中, 被強引用(' ... ')引起的
  7 #+      "$pattern"就不會擴展為"BEGIN". 

 

 

Note

Sed命令的-e選項表示后續的字符串是一個指令, 或指令集. 如果后續的字符串中只有一個指令, 那么-e選項可以被省略.

 

  1 sed -n '/xzy/p' $filename
  2 # -n選項會讓sed只打印那些匹配模式的行. 
  3 # 否則所有的輸入行都會被打印. 
  4 # 這里可以省略-e選項, 因為這里只有一個編輯指令. 

 


表格 C-2. sed操作符舉例

表示法 效果
8d 刪除輸入的第8行.
/^$/d 刪除所有空行.
1,/^$/d 從輸入的開頭一直刪除到第1個空行(第一個空行也刪除掉).
/Jones/p 只打印那些包含"Jones"的行(使用-n選項).
s/Windows/Linux/ 在每個輸入行中, 將第一個出現的"Windows"實例替換為"Linux".
s/BSOD/stability/g 在每個輸入行中, 將所有"BSOD"都替換為"stability".
s/ *$// 刪除掉每行結尾的所有空格.
s/00*/0/g 將所有連續出現的0都壓縮成單個的0.
/GUI/d 刪除掉所有包含"GUI"的行.
s/GUI//g 將所有"GUI"都刪除掉, 并保持剩余部分的完整性.

在輸入行中, 將一個字符串替換為空字符, 等價于刪除這個字符串. 剩余部分會保持完整. 比如s/GUI//, 拿下邊這句為例:

The most important parts of any application are its GUI and sound effects
結果為:
The most important parts of any application are its  and sound effects

 

反斜線將會強制sed替換命令延續到下一行. 類似于, 在第一行的結尾使用換行作為替換字符串.

  1 s/^  */\
  2 /g
這將每行開頭的空格用換行來替換. 最后的結果就是將每段的縮進替換為一個空行.

 

地址范圍后邊可以加上一系列操作, 這些操作可能需要放到大括號對中, 并且需要重起一行.

  1 /[0-9A-Za-z]/,/^$/{
  2 /^$/d
  3 }
這只會刪除連續空行中的第一行. 對于單行間距的文本文件來說, 這很有用, 但是會保留段落間的空行.

posted on 2009-09-05 00:13 大龍 閱讀(232) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产一区在线播放| 牛人盗摄一区二区三区视频| 国产精品久久午夜| 免费欧美高清视频| 性欧美18~19sex高清播放| 亚洲九九精品| 亚洲精品老司机| 91久久精品国产91久久性色| 黑人一区二区| 国产午夜精品理论片a级探花| 国产精品国产三级国产普通话三级| 欧美日韩国产不卡在线看| 欧美福利在线| 亚洲欧美日韩国产另类专区| av成人手机在线| 亚洲精品视频在线看| 日韩网站在线看片你懂的| 日韩视频在线你懂得| 一区二区三区高清在线| 午夜免费在线观看精品视频| 亚洲精品小视频在线观看| 亚洲午夜在线| 性久久久久久久久| 久久久av网站| 亚洲国产精品成人va在线观看| 亚洲国产片色| 亚洲欧美视频在线观看视频| 久久精品国产精品亚洲综合| 久久免费视频网| 男女视频一区二区| 国产精品嫩草99av在线| 一区在线免费| 亚洲调教视频在线观看| 亚洲欧美日韩一区二区在线| 久久久伊人欧美| 亚洲青色在线| 欧美一区二区在线视频| 欧美国产精品| 国产九九视频一区二区三区| 黑人一区二区| 一区二区三区日韩| 欧美一区二区视频在线| 亚洲在线视频| 久久一区国产| 久久国产精品高清| 欧美另类视频在线| 国产视频一区二区在线观看| 最新亚洲激情| 欧美一区二区三区免费观看视频| 玖玖玖国产精品| 亚洲永久网站| 欧美另类视频在线| 久久久亚洲国产美女国产盗摄| 欧美日韩一区高清| 亚洲黄色成人久久久| 久久不射电影网| 夜夜嗨网站十八久久| 欧美二区在线播放| 亚洲电影免费观看高清完整版在线观看 | 亚洲特黄一级片| 欧美一区二区三区四区夜夜大片 | 亚洲欧美日韩精品久久亚洲区 | 欧美影院视频| 国产精品久久久久久久久久久久| 亚洲高清av在线| 久久五月婷婷丁香社区| 亚洲欧美日韩电影| 欧美日韩免费高清一区色橹橹| 一区二区视频免费在线观看| 欧美一区免费视频| 宅男精品导航| 欧美视频专区一二在线观看| 亚洲精选91| 91久久久久久久久久久久久| 久久亚洲私人国产精品va媚药| 欧美福利在线| 亚洲成色www久久网站| 亚洲欧美日韩成人高清在线一区| 欧美高清视频www夜色资源网| 久久久久国内| 今天的高清视频免费播放成人| 激情文学综合丁香| 国产精品毛片va一区二区三区| 亚洲最新合集| 久久久亚洲成人| 校园激情久久| 国产在线国偷精品产拍免费yy| 午夜精品久久久久久久99热浪潮| 一区二区三区久久| 国产精品日本欧美一区二区三区| 中文高清一区| 亚洲一区中文| 国产精品一区视频网站| 午夜精品久久久久影视| 久久久久久久一区| 亚洲一区二区黄色| 久久理论片午夜琪琪电影网| 亚洲午夜免费福利视频| 狂野欧美一区| 欧美在线影院| 欧美性事免费在线观看| 蜜桃av噜噜一区| 国产精品区二区三区日本| 免费视频一区| 国产九色精品成人porny| 亚洲电影第1页| 国产综合久久久久影院| 一本色道久久88精品综合| 亚洲电影第三页| 欧美一级淫片播放口| 亚洲深夜福利网站| 欧美96在线丨欧| 狂野欧美激情性xxxx| 国产乱码精品| 亚洲图片在区色| 亚洲午夜精品网| 欧美精品二区三区四区免费看视频| 欧美一区二区三区精品| 欧美日韩成人一区二区三区| 欧美bbbxxxxx| 伊人狠狠色j香婷婷综合| 亚洲欧美文学| 午夜精品久久久久久久久久久久 | 国产综合色在线视频区| 亚洲视频久久| 一区二区高清在线观看| 蜜臀99久久精品久久久久久软件| 欧美一区二区三区精品电影| 国产精品久久久久久久午夜片| 亚洲开发第一视频在线播放| 亚洲精品影院| 欧美日韩日日骚| 日韩特黄影片| 亚洲综合成人在线| 国产精品久久精品日日| 亚洲视频在线观看视频| 亚洲欧美一区二区三区久久| 国产精品美女久久久免费| 在线亚洲+欧美+日本专区| 亚洲主播在线| 国产女人精品视频| 欧美一级在线亚洲天堂| 久久全国免费视频| 1024欧美极品| 久久er99精品| 国产精品一区2区| 亚洲一级黄色片| 亚洲一区二区在| 国产精品推荐精品| 久久av一区二区三区漫画| 美女国产精品| 亚洲美女毛片| 国产精品盗摄久久久| 亚洲欧美资源在线| 美女精品在线观看| 日韩一二三区视频| 国产精品乱人伦一区二区| 欧美一区免费视频| 欧美激情欧美狂野欧美精品 | 免费久久99精品国产| 亚洲第一精品久久忘忧草社区| 一本色道久久综合亚洲精品小说| 国产精品久久久久毛片大屁完整版 | 亚洲一区二区在线看| 国产中文一区二区三区| 欧美成人免费全部观看天天性色| 99精品国产一区二区青青牛奶| 久久成人综合网| 亚洲国产裸拍裸体视频在线观看乱了中文 | 亚洲精品国产视频| 亚洲欧美日韩在线观看a三区| 国产一区在线看| 欧美喷水视频| 欧美在线视频在线播放完整版免费观看| 久热成人在线视频| 中文国产成人精品久久一| 国产一区二区三区四区老人| 欧美精品一区二区三区蜜臀 | 欧美精品一区在线发布| 亚洲免费视频在线观看| 欧美大片在线观看一区二区| 亚洲一区高清| 亚洲精品之草原avav久久| 国产欧美一区二区三区久久| 欧美精品999| 久久精品卡一| 亚洲无线一线二线三线区别av| 免费毛片一区二区三区久久久| 亚洲尤物在线| 一本色道久久综合狠狠躁的推荐| 黄页网站一区| 国产精品色一区二区三区| 欧美精品日日鲁夜夜添| 久热精品在线| 欧美一区二区三区在线观看视频| 亚洲激情网站免费观看| 美女爽到呻吟久久久久| 久久亚洲色图| 久久手机精品视频| 久久精品最新地址|