以行為單位的新增/刪除
- 刪除
#刪除2到5行
nl /etc/passwd | sed '2,5d'
#刪除第三行
nl /etc/passwd | sed '3d'
#刪除從第三行開始到最后一行的行
nl /etc/passwd | sed '3,$d'
- 新增
a->目標行后面添加窿吩,i ->目標行前面添加
nl /etc/passwd | sed '2a xuzhang'
nl /etc/passwd | sed '2i xuzhang'
#添加多行的話苹祟,每一行以\隔開就行
nl /etc/passwd | sed '2a xuzhang\
maitng'
以行為單位的替換與顯示
- c
nl /etc/passwd | sed '2,5c No 2-5 number'
output:
1 root:x:0:0:root:/root:/bin/bash
No 2-5 number
6 sync:x:5:0:sync:/sbin:/bin/sync
.....(后面省略).....
- p
#打印5~7行
nl /etc/passwd | sed -n '5,7p'
#將匹配到root的行進行打印
nl /etc/passwd | sed '/root/p'
數(shù)據(jù)的搜尋并刪除
#將有root的行進行刪除。
nl /etc/passwd | sed '/root/d'
搜尋并執(zhí)行命令
#搜尋含有root的行饼疙,替換bash成blueshell,并將其打印,多個命令的話巫俺,用花括號豪椿,并將命令以;隔開。
nl /etc/passwd | sed -n '/root/{s/bash/blueshell/;p}'
數(shù)據(jù)查找并進行替換
sed 's/要被取代的字串/新的字串/g',g代表全局替換叨恨。