【发布时间】:2015-03-29 08:46:19
【问题描述】:
我在使用这个脚本时遇到了问题:
#!/bin/bash
echo -n "Digit new name (no spaces and special chars!): "
read newname
echo -e "\n"
i=0
if test "$(ls -A | grep [.]jpg)"; then
for f in "$(ls -Atr | grep [.]jpg)"; do
let i=i+1
#mv "$f" "$(printf "${newname}_%03d.jpg" "$i")"
echo "$f renamed in: " $(printf "${newname}_%03d.jpg" "$i")
done
echo -e "\n\033[1;33;41m$i substituded!\033[0m\a"
else
echo -e "\n\033[1;33;41mNothing was done!\033[0m\a"
fi
sleep 3
exit
我的问题是替换所有文件,但按日期排序(旧的优先)。
在上面的脚本中,我正在使用echo 进行测试,结果是所有文件列表都被重命名为一个文件。
【问题讨论】:
标签: bash batch-rename