AWK分隔符的顺序是否会影响分段结果

时间:2017-12-14 09:34:34

标签: linux awk

我的文件内容如下:

enter image description here

为什么这些行为不同?

enter image description here

1 个答案:

答案 0 :(得分:1)

字段分隔符-F采用正则表达式,并且您传递了一些常见的东西,一个可能的分隔符的字符类。

在第二种情况下会发生的情况是,在字符类中,-具有在不作为第一个或最后一个条目时定义范围的特殊含义:[a-z]表示a和z之间的任何字符,所以你的第二个选项[ -:]意味着“在空格和:之间使用任何字符作为分隔符,如果你希望看到它依赖于哪个字符,你可以查看ASCII table。一个解决方法是将它作为{{ {1}}但通常最好将它放在一个没有特殊含义的地方,比如第一个或最后一个地方,真正需要在字符类中转义的唯一字符是[ \-:]作为它的位置无法判断它是否正在关闭该课程或是否属于该课程。

要分割的结果字符集为]