替换字符串中的点,但保留最后一个点

替换字符串中的点,但保留最后一个点

可能重复:
替换字符串中的点,但保留最后一个点

替换“。” [点],但保留最后一个:例如:.txt [字符串中可能有随机数量的点,甚至零,我只需要最后一个]

$ echo 'someth.ing.something.txt' | SOMEMAGIC
someth-ing-something.txt
$

答案1

$ file='someth.ing.something.txt'
$ ext=${file##*.}
$ base=${file%.$ext}
$ echo $base
someth.ing.something
$ temp=${base//./-}
$ echo $temp
someth-ing-something
$ newfile=${temp}.${ext}
$ echo $newfile
someth-ing-something.txt

相关内容