问题:
我有 200 多个文件,其名称与“DSC01852.JPG.jpg”类似。我想删除文件扩展名,这样结果就变成“DSC01852.JPG”。
有什么建议吗?我查看了 mv 命令,但不太清楚如何编写正确的命令。
答案1
如果这些文件都在同一个目录中,您可以像这样重命名它们:
for f in /some/dir/*.JPG.jpg; do
mv "$f" "${f%.*}"
done
${f%.*}
.*
从变量(在本例中为文件名)的末尾删除与模式匹配的最短文本(一个点后跟任意文本) $f
,从而产生如下命令:
mv "/some/dir/DSC01852.JPG.jpg" "/some/dir/DSC01852.JPG"