首页 > Bash:请教关于AWK中split()方法的使用

Bash:请教关于AWK中split()方法的使用

[root@localhost home]# awk 'BEGIN { print split($0, arr, ":") }' xxxx
0
[root@localhost home]# cat xxxx
21:35:58

文档上说split()会返回fields的数量,但这里为什么输出的却是0而不是3呢?


输出0是因为$0没有被替换为正确的字符串,原因是你加了BEGIN
BEGIN是在awk扫描输入之前进行的操作,此时还没有进行文件读取操作,去掉BEGIN就行了。

awk '{ print split($0, arr, ":") }' xxxx
【热门文章】
【热门文章】