小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Linux系統(tǒng)Shell精講九、sed

 蘇醒的貝殼 2019-01-01

定義

sed是非交互式文本工具,相對于vim交互式文本工具。

處理過程

Linux系統(tǒng)Shell精講九、sed

  1. 將當前正在處理的行保存到一個臨時緩沖區(qū)(模式空間)
  2. 處理臨時緩沖區(qū)的行,并發(fā)送到屏幕上
  3. 刪除臨時緩沖區(qū)的行,將文本中下一行保存到臨時緩沖區(qū)
  4. 處理臨時緩沖區(qū)的行,即②步
  5. 處理完文件最后一行,sed結(jié)束運行

用法

sed [option] 'action' [file]

option

  • -n僅顯示script處理后的結(jié)果
  • -e 允許對輸入數(shù)據(jù)應用多條sed命令進行編輯
  • -f直接將sed的命令寫在一個文件中,-f filename就可以運行文件中sed動作

action

  • s 字符串匹配/查找
  • i 編輯
  • d刪除
  • a追加
  • c替換
  • p打印指定的輸出行

例子

  • 將文件每行的LINUX替換為World, 命令

sed 's/LINUX/world/g' sed.txt

Linux系統(tǒng)Shell精講九、sed

成功替換,并且原文件沒有改變

g的含義是整行都替換,如果是數(shù)字代變第幾個匹配替換

sed 's/LINUX/world/1' sed.txt

Linux系統(tǒng)Shell精講九、sed

第一個匹配

sed 's/LINUX/world/3' sed.txt

Linux系統(tǒng)Shell精講九、sed

匹配的個數(shù)不夠就不替換

s前面加數(shù)字,表示第幾行匹配替換

sed '1s/LINUX/WORLD/1' sed2.txt

Linux系統(tǒng)Shell精講九、sed

只第一行匹配

sed '2s/LINUX/WORLD/1' sed2.txt

Linux系統(tǒng)Shell精講九、sed

第二行匹配失敗,不會再去下一行匹配替換

sed '1,4s/LINUX/WORLD/g' sed2.txt

Linux系統(tǒng)Shell精講九、sed

1行-4行替換

sed '4s/LINUX/WORLD/1;4s/LINUX/WORLD/2' sed2.txt

Linux系統(tǒng)Shell精講九、sed

多個action以“;”分隔

sed -e '4s/LINUX/WORLD/1' -e '4s/LINUX/WORLD/2' sed2.txt

Linux系統(tǒng)Shell精講九、sed

  • 直接替換原文件中內(nèi)容
sed -i 's/LINUX/WORLD/g' sed2.txt

Linux系統(tǒng)Shell精講九、sed

  • 在第一行插入
sed '1i hello world ' sed2.txt

Linux系統(tǒng)Shell精講九、sed

  • 在第一行追加
sed '1 a hello world ' sed2.txt

Linux系統(tǒng)Shell精講九、sed

  • 刪除匹配行
sed '/aa/d' sed2.txt

Linux系統(tǒng)Shell精講九、sed

結(jié)語

如果你有一個 100 萬行的文件,你要在第 100 行加某些文字,此時使用 vim 可能會瘋掉!因為文件太大了!那怎辦?就利用 sed ?。⊥高^ sed 直接修改/取代的功能,你甚至不需要使用 vim 去修訂!

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多