您的位置:首页 > 运维架构 > Shell

shell高效获取分割字符串的方法?

2013-05-22 12:49 218 查看
Shell
Linux

有一个字符串的变量,如下定义

A='abc.sina.txt'

想要获取后面名 txt

目前使用awk来获取: echo "$A" | awk -F'.' '{print $NF}'

这种方法感觉不是很好,想找一个更简单的获取方法。

最佳答案

可以直接使用shell的变量分割

echo ${A##*.}


问题换成获取文件名后缀更好些,给你个比较全的五个方法:

A='abc.sina.txt':

echo $A | awk -F . '{if (NF>1) {print $NF}}'

echo $A | sed 's/.*\.//'

echo $A | rev | cut -d . -f 1 | rev

echo ${A/*./}

echo ${A##*.}


A='abc.sina.txt';echo ${A:(-3)}


b=`echo ${A} | cut -d '.' -f3`

echo ${b}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: