添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

echo "a[b]c"|awk -F'[\]\[]' '{ print $3 }'
得到
c
echo "a[b]c"|awk -F'[\[\]]'  '{ print $3 }'
得到空?

经过一番研究发现
[][]处理成为匹配]或[
[[]]处理成为匹配[]
原因可能是字符组不允许为空:
[][]中第一个]真正作为]字符,而不是元字符,接着是字符[再遇到元字符]后字符组构造完毕,匹配]或[
[[]]同理第二个[也没有作为元字符
测试代码:

echo ']' | egrep '[]]'

echo '[' | egrep '[[]'

展开阅读全文