awk与cut在以空格为分割域时的区别

No Comments 脚本技巧

cut是以单个空格作为分隔符。 CUT无法取值多空格的情况。

——举例—————–

[root@]# mysql -h127.0.0.1 -P3346 -S /tmp/mysql3346.sock -e status |grep Uptime|cut -f2 -d":"|cut -d"d" -f1|cut -d" " -f2

[root@]# mysql  -h127.0.0.1 -P3346 -S /tmp/mysql3346.sock -e status |grep Uptime|cut -f2 -d":"|cut -d"d" -f1
            21

awk 以空格为分割域时,是以单个或多个连续的空格为分隔符的;

awk默认以空格为分割域, AWK确可以直接取到正常值

[root@]# mysql -h127.0.0.1 -P3346 -S /tmp/mysql3346.sock -e status |grep Uptime|cut -f2 -d":"|cut -d"d" -f1|awk ‘{print $1}’
21
[root@]# mysql  -h127.0.0.1 -P3346 -S /tmp/mysql3346.sock -e status |grep Uptime|cut -f2 -d":"|cut -d"d" -f1|awk ‘{print $0}’
            21

发表评论