Shell脚本,sed多行文本处理:i插入,a追加,r读取导入,w另存导出
sed多行文本处理: O、常用指令 1、i(insert)插入 2、a(append)追加 3、r(read)读取文件|导入文件内容 4、w(write)文件另存为|导出文件内容
一、i(insert)插入,将指定内容放到指定文件指定行的上一行,有-i才可以将改变写入文件
1、sed ‘2i XXX’ dir 在第二行的前面插入XXX,原先的第二行以及后面的内容行数全部+1,现在的第二行为插入的内容XXX
2、sed ‘/2046/i XXX\nYYY’ dir 正则符号查询,插入两行内容XXX,YYY,\n是换行符
二、a(append)追加,行下写入,需要-i写入文件 1、sed ‘3a XXX’ dir 在第三行的下一行开始追加XXX,追加的内容从第四行开始
2、sed ‘/2/a XXX’ dir 正则符号查询,并在行的下一行追加XXX
三、r(read),需要-i写入文件 1、sed ‘3r dirSrc’ dirDes 将dirSrc文件中的内容追加到dirDes文件的第3行后面
2、sed ‘/2/r dirSrc’ dirDes 正则符号查询,并在所有符合条件的行的下一行追加dirSrc的内容
3、sed ‘r dirSrc’ dirDes 在dirDes文件中的每一行都追加dirSrc文件中的所有内容
四、w(write)另存为和导出,不需要-i就可以新建出文件,另存为会覆盖原有内容。 1、sed ‘w dirDes’ dirSrc 将dirSrc文件中的所有行另存为一个新文件dieDes,不需要提前创建新文件
2、sed ‘1,3w dirDes’ dirSrc 将dirSrc文件中的1到3行另存为一个新文件dieDes,不需要提前创建新文件
3、sed ‘/2/w dirSrc’ dirDes 将所有包含内容2的行另存为一个新文件dieDes,不需要提前创建新文件
|