如何用sed或者awk处理 以下文本的 注释?
cat test1:aaa1234bbb4321
ccc5432
ddd1234
cat test2:
aaa1234
bbb4321
ccc5432
ddd 6748
eee 898332
脚本处理后希望得到新的 文件是, 从关键字aaa 开始到ddd 这一行前面加上“// ”, 但是ddd关键字的这一行不加这个"//".
test1_new:
// aaa1234
// bbb4321
// ccc5432
ddd1234
test2_new:
// aaa1234
// bbb4321
// ccc5432
ddd 6748
eee 898332
先谢谢大神了。
本帖最后由 shang2010 于 2023-02-20 21:21 编辑
逻辑很简单啊,不会写shell脚本,不是第一程序语言
读取一行,判断前几个字符串 ,符合echo 双斜线 append 原来的行
文件结束,就结束 如果是匹配关键字而不是行,得用字符一个一个的 判断了。关键你的aabbcc关键字是不是常量呢,c语言比较时候干这个 sed '/^aaa/,/^ddd/{/ddd/!s#^#//#}' test1 > test1_new 回复 1# clfsy
awk '/aaa/{a=1}/ddd/{a=0}{print a?"// "$0:$0>"newfile"}' file
页:
[1]