sed命令
-非交互式文本处理工具,一般在Shell脚本中使用
-默认情况下,所有的输出行都被打印到屏幕上
-sed编辑器逐行处理文件:把正在处理的行保存在一个临时缓冲区中,然后处理临时缓冲区的行,完成后把该行发送到屏幕上,sed没处理完一行就把它从临时缓冲区删除,然后下一行读入,进行处理和显示。处理完最后一样,sed处理结束。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改源文件
sed -i 修改内容 直接修改源文件不输入到屏幕上
sed -s 字符串匹配/查找
sed -d 删除
sed -a 追加
sed -c 替换
sed -p 打印指定的输出行
sed -a 添加行
例如:sed "s/teduhadoop/hadoop/g" demo.txt
g表示一行上的替换所有的匹配 g换成数字就是每一行的前多少个字符
sed "1 i hi word" demo.txt 在第一行添加内容
sed "1 a hi word" demo.txt 在第一行后追加一行
系统本身不支持直接将修改的内容写到源文件中,要修改源文件,就要加上-i或者重导向
需要替换某行中的内容就要: sed “ns/*/g" 替换在n行的内容
替换第2行到第三行的内容:sed "2,3s//*g” 文件
要多次操作用;隔开