awk中的gsub函数

目标:对文件a.txt中含有send\ccr的行实施替换:将其中><item中插入换行符号:

在windows下使用unixtools中的awk实现方式如下:

awk -v file="send\\\\ccr" "{if($0~file){gsub(/gt;<item/,\"gt;\n\\^<item\")} print $0}" a.txt

注意点:

1、用awk变量导入时,window路径中含有的 \ 符号需要转义,又因为awk中该符号仍然需要转义,因此传入时需要4个\ 才可以;

2、windows下的awk不支持 ‘ ,所以使用 “ ,因此在action中的”就需要转义;

3、&在cmd命令行下是命令符号,在没有“ 符号保护的情况下需要cmd下转义!cmd中的转义符号是 ^ ,因此第二个&符号要用 ^&;

4、&在awk正则表达式中也是特殊符号(表示匹配到的字符串),因此也需要转义,要在^&前增加 \\ 来转义!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值