Linux 文本处理命令

sed命令

sed [-nefr] [动作]

-n:使用安静模式。在一般sed的用法中,所有来自STDIN的数据一般都会被列出到屏幕。但是如果加上-n,则只有经过sed特殊处理的那一行才会被列出

-e:直接在指令模式上进行sed的动作编辑
-f:直接将sed的动作写在一个档案内,-f filename则可以执行filename内的

动作:
-r:sed的动作支持的延伸型正则表示法的语法
-i:直接修改读取的档案内容,而不是由屏幕输出

动作说明: [n1, [n2]]function
n1, n2:一般代表选择进行动作的行数

function:
a:新增,a的后面接字符串,而这些字符串会在新的一行出现(即目前的下一行)
c:取代,c的后面可以接字符串,这些字符串可以取代n1, n2之间的行
d:删除
i:插入,i的后面可以接字符串,这些字符串会在新行出现(目前行的上一行)
p:打印,将某个选择的数据打印
s:取代,

例子:
将文件的2-5行删除

sed '2,5d' filename

将文件的第二行追加nnn

sed '2a nnn' filename

将文件第2到5中行中 kkk取代为 ggg

sed '2,5s/kkk/ggg/g' filename

你可能感兴趣的:(Linux 文本处理命令)