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

Posted 拨云见日

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用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个字段。

以上是关于如何使用awk从后向前来截取字符串?的主要内容,如果未能解决你的问题,请参考以下文章

从后向前截取指定长度的字符串

matlab如何从后向前读入文件tsxtscan

Java 按字节计算字符串的长度

shell脚本中的数组常见使用方式

java字符串倒叙,字符串从后向前JAVA

Linux 中如何运用awk截取文件名中部分内容?