首页 > 其他 > 详细

使用sed和awk取除最后两个字段之外的字段

时间:2017-08-30 19:43:56      阅读:435      评论:0      收藏:0      [点我收藏+]

字符串示例为:

/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/ufs-client-2.0.0.jar

需求:如果使用斜杠/作为分隔符的话,可能每个字符串的字段数不同,这时需要取 除了最后两个字段外的其他字段字符串,所得结果应为如下形式:

/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/


解决方法:

1、使用sed

[root@www ~]# b="/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/2.0.0/ufs-client-2.0.0.jar"
[root@www ~]# a=`echo "/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/2.0.0/ufs-client-2.0.0.jar" |awk -F‘/‘ ‘{print $(NF-1)"/"$NF}‘`
[root@www ~]# echo $b|sed -n "s#$a##gp"
/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/


2、使用awk

[root@www ~]# b="/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/2.0.0/ufs-client-2.0.0.jar"
[root@www ~]# echo $b |awk -F‘/‘ ‘{gsub($(NF-1)"/"$NF,"");print}‘
/Users/yfan/Downloads/dsc20170801_jar/releases/com/netfinworks/ufs/ufs-client/




本文出自 “甘木” 博客,请务必保留此出处http://ganmu.blog.51cto.com/9305511/1961162

使用sed和awk取除最后两个字段之外的字段

原文:http://ganmu.blog.51cto.com/9305511/1961162

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!