在Bash中提取子字符串在表单中给出文件名someletters_12345_moreleters.ext,我想提取这5位数,并将它们放入一个变量中。因此,为了强调这一点,我有一个文件名,其中有x个字符,然后是一个5位序列,两边都有一个下划线,然后是另一组x个字符。我想取5位数,然后把它放进一个变量中。我非常感兴趣的是,有多少种不同的方法可以做到这一点。
3 回答
噜噜哒
TA贡献1784条经验 获得超7个赞
b=${a:12:5}
tmp=${a#*_} # remove prefix ending in "_"b=${tmp%_*} # remove suffix starting with "_"
波斯汪
TA贡献1811条经验 获得超4个赞
number=$(echo $filename | egrep -o '[[:digit:]]{5}' | head -n1)
number=${filename:offset:length}
stuff_digits_...
number=$(echo $filename | awk -F _ '{ print $2 }')
number=$(echo $filename | tr -cd '[[:digit:]]')
- 3 回答
- 0 关注
- 429 浏览
添加回答
举报
0/150
提交
取消