下面代码变量当前目前,并且把所有 txt 后缀修改为 png
for file in `ls *` ; do mv $file ${file%.txt}.png; done
// 等同于下面的代码
for file in `ls`
do
...
done
for 循环是以空格来分隔字符串的,如果文件中出现空格的话,一个完整的文件名会被分隔成多个文件名,导致重命名错误。我们可以通过设置 IFS 变量来解决问题
IFS=$'\n'
for file in `ls`
do
mv $file ${file%.txt}.png
done
也可以这样写:
ls | grep "*.txt" | while read file
do
...
done
rename 也支持批量修改文件名。
rename txt jpg *
- EOF -
本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动。
转载请注明:文章转载自 Binkery 技术博客 [https://binkery.com]
本文标题: Linux 批量重命名
本文地址: https://binkery.com/archives/409001.html