gpt4 book ai didi

linux - 将一组文件重命名为 001、002、

转载 作者:IT王子 更新时间:2023-10-29 00:18:22 28 4
gpt4 key购买 nike

我最初有一组图像,格式为 image_001.jpg、image_002.jpg、...

我浏览了它们并删除了几个。现在我想将剩余的文件重命名回 image_001.jpg、image_002.jpg、...

是否有 Linux 命令可以巧妙地执行此操作?我熟悉重命名,但看不到任何命令这样的文件名。我在想,由于 ls *.jpg 按顺序(有间隙)列出文件,解决方案是将其输出传递到 bash 循环或其他东西中?

最佳答案

如果我没理解错的话,你有例如image_001.jpg、image_003.jpg、image_005.jpg,你想重命名为image_001.jpg、image_002.jpg、image_003.jpg。

编辑:这被修改为将临时文件放在当前目录中。正如 Stephan202 指出的那样,如果 temp 在不同的文件系统上,这可能会有很大的不同。为了避免在循环中碰到临时文件,它现在通过 image*

i=1; temp=$(mktemp -p .); for file in image*
do
mv "$file" $temp;
mv $temp $(printf "image_%0.3d.jpg" $i)
i=$((i + 1))
done

关于linux - 将一组文件重命名为 001、002、,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/880467/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com