把一个文档前五行中包含字母的行删掉,同时删除 6 到 10 行 包含的所有字母
1) 准备测试文件,文件名为 2.txt
第 1 行 1234567 不包含字母
第 2 行 56789BBBBBB
第 3 行 67890CCCCCCCC
第 4 行 78asdfDDDDDDDDD
第 5 行 123456EEEEEEEE
第 6 行 1234567ASDF
第 7 行 56789ASDF
第 8 行 67890ASDF
第 9 行 78asdfADSF
第 10 行 123456AAAA
第 11 行 67890ASDF
第 12 行 78asdfADSF
第 13 行 123456AAAA
2)脚本如下:
#!/bin/bash
##############################################################
#把一个文档前五行中包含字母的行删掉,同时删除 6 到 10 行包含的所有字母
##############################################################
sed -n '1,5'p 2.txt |sed '/[a-zA-Z]/'d
sed -n '6,10'p 2.txt |sed s'/[a-zA-Z]//'g
sed -n '11,$'p 2.txt
#最终结果只是在屏幕上打印结果,如果想直接更改文件,可将输出结果写入临时文件中,再
替换 2.txt 或者使用-i 选项最后更新于