- 获取扩展名称name.jpg、name.mp4
`#!/bin/bash
name="www.bai"
name1="www.baidu.com"
#使用非贪婪--${var%.*}:从右往左匹配到第一个.*并将其删除
echo "${name%.*}"
echo "${name1%.*}"
输出:name:www
name1:www.bai
- 使用贪婪–{var%%.*}:从右往左将.baidu.com进行删除,可以看做www.{var},var=.baidu. -
echo "${name1%%.*}"
输出:www
- 获取扩展名
#由左向右进行匹配,删除#右侧*匹配的通配符,非贪婪
echo "${name#*.}"
输出:bai
#${var}.com,${var}=www.bai,删除www.bai,剩余扩展名,贪婪
echo "${name1##*.}"
输出:.com
本文介绍如何使用Bash脚本中的变量扩展特性来处理文件名,包括去除文件扩展名及仅保留扩展名的方法。通过非贪婪与贪婪模式的对比,读者可以了解如何灵活运用这些技巧来满足不同场景的需求。
314

被折叠的 条评论
为什么被折叠?



