目录中有如下两个文件
1.txt.file touch 2.txt.file
想要实现删除.file,即扩展名,可通过以下脚本快速实现
for file in $(ls *.file);do ext=${file%.*};mv $file $ext;done
其中${file%.*}为获取文件名,mv$file $ext为重命名操作
附加:echo ${file##*.} 可获取文件的扩展名
echo ${file%.*} 可获取文件名
root@oldboy extension_name$file=1.txt.file
root@oldboy extension_name$echo ${file%.*} 最短匹配,获取文件名
1.txt
root@oldboy extension_name$echo ${file%%.*}
1
root@oldboy extension_name$echo ${file##*.} 启用最长匹配,获取扩展名
file
root@oldboy extension_name$echo ${file#*.}
txt.file
原文地址:http://xoyabc.blog.51cto.com/7401264/1678292