关于踩过的awk单引号和双引号的坑

之前有一个文件里的内容是
|+|abc|+|1234|+|http://url|+|
之前查看别的文件,使用awk 分割时,一直是用的""双引号,也没有发现异常。
当遇到上述格式的时候,发现了不对劲,切割出来的结果不是自己想要的

echo "|+|abc|+|1234|+|http://url|+|" |awk -F "\\|\\+\\|" '{print $2}'

上述命令执行的结果其实并没有按照"|+|"来切割

|abc|

把双引号换成单引号的时候,结果才是正常的,另外这个问题在mac里,我如果使用的双引号就直接报错了

echo "|+|abc|+|1234|+|http://url|+|" |awk -F '\\|\\+\\|' '{print $2}'

结果是显示是正常的,按照"|+|"来切割

abc

在mac里执行第一段代码

awk: illegal primary in regular expression |+| at +|
 input record number 1, file
 source line number 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值