我有4000个文件,我需要在所有文件名的开头添加1到4000个。
例如:
file_a.CEL
file_c.CEL
file_g.CEL
file_x.CEL
...
other_file.CEL
应该成为:
1_file_a.CEL
2_file_c.CEL
3_file_g.CEL
4_file_x.CEL
...
4000_other_file.CEL
重要的是,数字后面的下划线也会被添加。文件名完全不同(文件名没有系统),它们的编号顺序也无关紧要。使用bash有一种简单的方法吗?非常感谢提前!
答案 0 :(得分:2)
使用for
循环和mv
可以为您提供所需的效果。这不是一个特别有趣的解决方案,但它很简单。
COUNT=1
for file in ./*; do
mv "$file" "${COUNT}_$file"
let COUNT++
done
答案 1 :(得分:1)
i=1
for f in *; do
echo Renaming file \"$f\" to \"${i}_${f}\"
mv "$f" "${i}_${n}"
i=$((i+1))
done
答案 2 :(得分:1)
相关主题:Renaming multiple files using a Shell Script
在您的情况下,您可以执行以下操作:
n = 1
for file in *.CEL; do
new_name=$n_$file
n=$(($n+1))
mv $file $new_name
done