1. 程式人生 > >Linux—sed命令例項

Linux—sed命令例項

一、sed命令 sed command parameter -n:使用案件模式,只在螢幕列出經過sed特殊處理的行 -e:用多條sed命令操作輸入行 -f:指定sed指令碼的檔名,直接將sed的動作寫在文件內 -r:支援正則表示式語法 -i:直接修改讀取的檔案內容,不輸出到終端 sed command a:新增 c:取代 d:刪除 i:插入 p:列印 s:取代,可搭配正則表示式 通用命令eg: 1.(p命令)以行為單位,顯示檔案的某些行內容,一般會和 -n 一起使用 #列印test.txt檔案的第一行 sed -n '1p' test.txt #列印test.txt檔案的2~5行 sed -n '2,5p' test.txt #列印列印test.txt檔案的最後一行($) sed -n '$p' test.txt #查詢包含command所在的行並列印 sed -n '/command/p' test.txt #列印test.txt檔案的第1到匹配command的行 sed -n '1,/command/p' test.txt #列印test.txt檔案的第1到匹配command的行,並列印行號({=;p}
) sed -n '1,/command/{=;p}' test.txt #列印test.txt檔案的除第1到匹配command外的其他行行,並列印行號(!取反) sed -n '1,/command/!{=;p}' test.txt 2.(d命令)以行為單位,刪除檔案的某些行內容 #刪除test.txt檔案的第一行,並顯示 sed '1d' test.txt //(對檔案沒有真正刪除,如需刪除,需增加-i 引數) #刪除test.txt檔案的2~5行 sed '2,5d' test.txt #刪除test.txt檔案的最後一行($) sed '$d' test.txt #刪除空白行 sed '/^$/d' test.txt #查詢包含command所在的行並刪除 sed '/command/d' test.txt #統計檔案行數 sed -n '$=' test.txt 3.(a/i命令)
在檔案中增加行 #在第n行前增加一行( i) sed '1i test' test.txt #在第n行後增加一行( a) sed '1a test' test.txt #增加多行內容(\n) sed '1i test\ntest\ntest' test.txt 4.(c命令)以行為單位替換 #第n行替換為新的內容 sed '1c test' test.txt #第n1到n2行替換為新的內容 sed '1,3c test' test.txt 5.(s命令)替換一行中的某部分 #sed 's/要替換的字串/新的字串/g' sed 's/t/d/g' test.txt //將test1.txt檔案裡的 t 替換成 d 注意
:g引數起全域性的作用,帶上g引數,搜尋所有的待替換字串並替換;不帶g引數,匹配到每行的第一個待替換字串完成替換並進入下一行; sed 's/t/d/4g' test.txt “要替換的字串”可以用正則匹配 如在test.txt里加入一行 inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0 #取本機IP cat test.txt |grep 'inet addr' | sed 's/^.*addr://g' | sed 's/Bcast:.*$//g' #在匹配command行的行首新增#字串 sed '/command/s/^/#/' test.txt #在匹配command字元前增加test sed 's/command/test &/' test.txt #在匹配command行的行尾增加test字串 sed '/command/s/$/ test/' test.txt #在每行的開頭新增test字串 sed 's/^/test /' test.txt #在每行的行尾增加 end sed 's/$/ end/' test.txt 6.(引數-e)多點編輯 #刪除1~3行,並將test替換為空 sed -e '1,3d' -e 's/test//g' test.txt 7.(r 命令)讀檔案內容 #將一個檔案中的內容加到當前檔案的匹配r:讀檔案的下一行 sed '/r:讀檔案/r rtest.txt' test.txt 8.(w命令)寫檔案內容 #將當前檔案(test.txt)中包含“w:寫檔案”的行寫到wtest.txt檔案中(會新建檔案,覆蓋原檔案內容) sed '/w:寫檔案/w wtest.txt' test.txt 9.(y命令)字元轉換 #將字元a、c、d、i、p、s、r、w分別轉換為A、C、D、I、P、S、R、W sed 'y/acdipsrw/ACDIPSRW/' test.txt 10(q命令)退出 #列印完第10行後退出sed sed '10q' test.txt 11.(&標記)已匹配字串標記 &對應於之前匹配到的字串 #匹配每個單詞,新增[ ] sed 's/\w\+/[&]/g' test.txt 12.(\1標記)子串匹配標記\1 #匹配test後,取其後的第一個數字 sed 's/test\([0-9]\)/\1/' test.txt 13.列印奇數行或偶數行 #奇數行 sed -n 'p;n' test.txt sed -n '1~2p' test.txt #偶數行 sed -n 'n;p' test.txt sed -n '2~2p' test.txt 14.sed 引用變數 當sed命令裡面沒有預設的變數時需把單引號改成雙引號 sed "s/test/$name/" test.txt 當sed命令裡面有預設的變數時,那自己定義的變數需要加單引號,且sed裡面的語句必須用單引($a表示在最後一行後) sed '$a '$name'' test.txt

相關推薦

Linuxsed命令例項

一、sed命令 sed command parameter -n:使用案件模式,只在螢幕列出經過sed特殊處理的行 -e:用多條sed命令操作輸入行 -f:指定sed指令碼的檔名,直接將sed的動作寫在文件內 -r:支援正則表示式語法 -i:直接修改讀取的檔案內容,不輸出到

Linux--sed命令

數據 spa common 千萬 run basic 下載 pyc 添加 簡介 sed 是一種在線編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成後,把緩沖區的

linux零基礎學習之Linux sed 命令常用操作詳解

延伸 進行 數據 12px -i 空白 字符串 options 信息 sed是Linux系統中一個很好的文件處理工具,可以對數據進行替換、刪除、新增以及選取等操作,使用起來也十分方面,以下是全面的sed操作介紹。sed命令行格式:sed [options] 'com

Linux sed命令詳解

world 正則 技術分享 earch yum shutdown height 註意 備註 sed是一種流編編器,它是文本處理中非常中的工具,能夠完美的配合正則表達式便用,功物能不同凡響。 處理時,把當前處理的行存儲在臨時緩沖區中,稱為”模式空間”( oat

linux-sed命令

文件結尾 Edito pri 3.3 文件名 repl tro pat 增加 第1章 sed基礎 1.1 sed的選項 stream editor 流編輯器 -r  支持擴展正則 -n  取消默認輸出 -i

Linux sed命令(二)進階

在之前的文章 Linux sed命令(一)基礎中,我們分析了sed命令的基本使用,它們基本可以滿足我們的大多數操作,然而我們可以發現它存在著一些侷限,比如:需要跨行操作、跳轉操作時,我們就需要學習sed更多的高階特性了。 一、多行命令 sed編輯器中有三個可以用來處理多行文字的特

Linux sed命令(一)基礎

一、sed命令簡介 sed(StreamEditor)是一個“非互動式的”面向字元流的編輯器,能同時處理多個檔案多行的內容。處理時,把當前處理的行儲存在臨時緩衝區中,接著用sed命令處理,處理完成後,把緩衝區的內容送往螢幕。接著處理下一行,這樣不斷重複,直到檔案末尾。並且原始檔內容沒有

Linux sed命令總結

sed是Linux中處理文字最重要的兩個工具之一,能夠極大簡化需要進行的資料處理任務。 sed被稱為流編輯器(stream editor),可以根據命令來處理資料流中的資料。這些命令要麼從命令列中輸入,要麼儲存在一個命令文字檔案中。sed會執行一下操作: (1)一次從輸入中讀取一行資料

Linux who命令例項詳解

關於who 顯示登入系統的使用者。 描述 who命令列印有關當前登入的所有使用者的資訊。 who語法 who [ OPTION ]... [ FILE ] [ am i ] 選項 -a, --all 與使用選項-b -d --login -p -r -t -T

Linux tree命令例項詳解

關於tree tree以樹狀格式列出目錄的內容。 這是一個非常簡潔實用的程式,您可以在命令列中使用它來檢視檔案系統的結構。 描述 tree是一個遞迴目錄列表程式,它生成一個深度縮排的檔案列表(如果設定了LS_COLORS環境變數,則會著色)並輸出為tty。 如果沒有引數,樹將列出當前目錄中的檔案。 當給

Linux sed命令

sed工具 流式編輯器 又稱行編輯器 語法:sed [-nefri] 'command' 輸入文字 引數說明: -e<script>或--expression=<script&g

Linux:sudo命令例項講解

Linux下sudo命令例項講解 1、概念:    sudo是linux下常用的允許普通使用者使用超級使用者許可權的工具,允許系統管理員讓普通使用者執行一些或者全部的root命令,如halt,reboot,su等等。這樣不僅減少了root使用者的登陸和管理

Linux常用命令例項詳解(N

N netstat 顯示網路有關的資訊,比如套介面使用情況、路由、介面、協議(TCP等)等 檢視TCP連線的命令是什麼? 正確答案: C 你的答案: A (錯誤) tcpdump top netstat ifconfig O P

Linux - Sed命令

sed是一種流編輯器,它是文字處理中非常重要的工具,能夠完美的配合正則表示式使用,功能不同凡響。 Sed主要用來自動編輯一個或多個檔案;   sed的選項、命令、替換標記 命令格式 sed [options] 'command' file(s) sed [options

Linux Sed命令詳解+如何替換換行符"\n"(很多面試問道)

SedSed是一個強大的文字處理工具可以採用正則匹配,對文字進行插入刪除修改等操作Sed處理的時候,一次處理一行,每一次把當前處理的存放在臨時緩衝區,處理完後輸出緩衝區內容到螢幕,然後把下一行讀入緩衝區,如此重複,直到結尾。1、命令格式和引數sed [-nefr] [動作]

linux sed命令使用一些小問題整理

Shell 正則(完全匹配),通配(部分匹配) (正則和統配的特殊符號是不一樣的) find , ls , cp支援萬用字元,不支援 正則 grep awk sed可以支援正則,正則包含匹配 特殊字元用法 / 字元 轉義 “\/”

linux sed命令 + 高階SED 操作配置檔案

http://www.360doc.com/content/12/0209/14/8739082_185278180.shtml 上面的網址也有SED的 例子用法,更全 http://wenku.baidu.com/link?url=Ci_Bdi8nI4NbuEUP

linux sed命令詳解2

簡介 sed 是一種線上編輯器,它一次處理一行內容。處理時,把當前處理的行儲存在臨時緩衝區中,稱為“模式空間”(pattern space),接著用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往螢幕。接著處理下一行,這樣不斷重複,直到檔案末尾。檔案內容並沒有 改變,除非你使用重定向儲存輸出。S

Linux sed命令實現替換文字內容

方案一: sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.or

linux sed 命令總結

下面是網上查詢到的例子: sed -i ':a;/^+/{s/.*/+ X/;n;n;s/.*/+ X/};n;ba' file.txt 按順序解釋如下: 名稱 註釋