Sed主要用來自動(dòng)編輯一個(gè)或多個(gè)文件;簡(jiǎn)化對(duì)文件的反復(fù)操作;編寫轉(zhuǎn)換程序等。
sed [-hnV][-e<script>][-f<script文件>][文本文件]
參數(shù)說明:
動(dòng)作說明:
在testfile文件的第四行后添加一行,并將結(jié)果輸出到標(biāo)準(zhǔn)輸出,在命令行提示符下輸入如下命令:
sed -e 4a\newLine testfile
首先查看testfile中的內(nèi)容如下:
$ cat testfile #查看testfile 中的內(nèi)容
HELLO LINUX!
Linux is a free unix-type opterating system.
This is a linux testfile!
Linux test
使用sed命令后,輸出結(jié)果如下:
$ sed -e 4a\newline testfile #使用sed 在第四行后添加新字符串
HELLO LINUX! #testfile文件原有的內(nèi)容
Linux is a free unix-type opterating system.
This is a linux testfile!
Linux test
newline
將 /etc/passwd 的內(nèi)容列出并且列印行號(hào),同時(shí),請(qǐng)將第 2~5 行刪除!
[root@www ~]# nl /etc/passwd | sed '2,5d'
1 root:x:0:0:root:/root:/bin/bash
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
.....(后面省略).....
sed 的動(dòng)作為 '2,5d' ,那個(gè) d 就是刪除!因?yàn)?2-5 行給他刪除了,所以顯示的數(shù)據(jù)就沒有 2-5 行羅~ 另外,注意一下,原本應(yīng)該是要下達(dá) sed -e 才對(duì),沒有 -e 也行啦!同時(shí)也要注意的是, sed 后面接的動(dòng)作,請(qǐng)務(wù)必以 '' 兩個(gè)單引號(hào)括住喔!
只要?jiǎng)h除第 2 行
nl /etc/passwd | sed '2d'
要?jiǎng)h除第 3 到最后一行
nl /etc/passwd | sed '3,$d'
在第二行后(亦即是加在第三行)加上『drink tea?』字樣!
[root@www ~]# nl /etc/passwd | sed '2a drink tea'
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
drink tea
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
.....(后面省略).....
那如果是要在第二行前
nl /etc/passwd | sed '2i drink tea'
如果是要增加兩行以上,在第二行后面加入兩行字,例如『Drink tea or .....』與『drink beer?』
[root@www ~]# nl /etc/passwd | sed '2a Drink tea or ......\
> drink beer ?'
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
Drink tea or ......
drink beer ?
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
.....(后面省略).....
上一個(gè)教程:Linux系統(tǒng)管理命令大全
下一個(gè)教程:實(shí)驗(yàn)項(xiàng)目2 linux基本命令