如何使用awk从后向前来截取字符串?


下面有这样的一个变量:

 

NGINX_INFO:="MjQwODo1YTgwOjoy:22:root:WW9ueW91QDIwMjI="
 

如何实现,以冒号为分隔符,截取 22(端口)这个字段?

 

可以从开头,截取第2个字段,如果从后面进行截取呢?

 

使用下面的方法来实现:

 

使用NF 来获取最后一个字段,这里冒号作为分隔符

NGINX_INFO="MjQwODo1YTgwOjoy:22:root:WW9ueW91QDIwMjI="

[root@yks01 iuap-installer]# echo $NGINX_INFO | awk -F":" '{print $(NF)}'
WW9ueW91QDIwMjI=

 

使用NF -1获取倒数第2个字段,依次类推

[root@yks01 iuap-installer]# echo $NGINX_INFO | awk -F":" '{print $(NF-2)}'
22

 

NF -2就是倒数第3个字段。

posted @ 2023-03-29 14:52  Zhai_David  阅读(835)  评论(0编辑  收藏  举报