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

来源:互联网 发布:微信uwp for windows 编辑:程序博客网 时间:2024/05/29 03:34

有一个字符串的变量,如下定义
A='abc.sina.txt'
想要获取后面名 txt
目前使用awk来获取: echo "$A" | awk -F'.' '{print $NF}'
这种方法感觉不是很好,想找一个更简单的获取方法。

  • 最佳答案

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

  1. echo ${A##*.}

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

  1. A='abc.sina.txt'
  2. echo $A | awk -F . '{if (NF>1) {print $NF}}'
  3. echo $A | sed  's/.*\.//'
  4. echo $A | rev | cut -d . -f 1 | rev
  5. echo ${A/*./}
  6. echo ${A##*.}
  1. A='abc.sina.txt';echo ${A:(-3)}

  1. b=`echo ${A} | cut -d '.' -f3`
  2. echo ${b}
原创粉丝点击