Batch file 按日期批量重命名文件

Batch file 按日期批量重命名文件,batch-file,terminal,rename,Batch File,Terminal,Rename,我渲染了140000帧来制作一部电影。 但是,它从1.png开始,如果它从000001.png开始会更好,以便在最终剪切express中导入时保持良好的顺序 我曾经有一个程序的r-名称,但这是基于电源pc,所以它不再工作。 此外,该计划是相当屎,甚至有一批300个文件,例如,所以我想它会更好地使用终端 我见过重命名的例子,但大多数都是在哪里更改扩展名,例如更改前缀 有人能帮我找到正确的终端脚本吗?我需要尽快完成此项目,否则我会重新渲染它,但需要15个小时。效率不高,但因为您只需要运行一次: fo

我渲染了140000帧来制作一部电影。 但是,它从1.png开始,如果它从000001.png开始会更好,以便在最终剪切express中导入时保持良好的顺序

我曾经有一个程序的r-名称,但这是基于电源pc,所以它不再工作。 此外,该计划是相当屎,甚至有一批300个文件,例如,所以我想它会更好地使用终端

我见过重命名的例子,但大多数都是在哪里更改扩展名,例如更改前缀


有人能帮我找到正确的终端脚本吗?我需要尽快完成此项目,否则我会重新渲染它,但需要15个小时。

效率不高,但因为您只需要运行一次:

for i in `seq 1 140000`; do
  mv $i.png `printf %06d $i`.png
done
编辑:我可能错误地认为您使用的是Linux。这在Windows上不起作用

编辑:是的,这应该在Mac OS X中工作。您可以将其保存到文件中,而不是在提示符中键入这些行。通常,您会使用rename.sh这样的名称保存这样的文件。然后您可以在终端上运行它,如下所示:

sh rename.sh
如果您不确定,可以将中压线路更改为:

echo mv $i.png `printf %06d $i`.png
这将在屏幕上打印将要执行的命令。然后,如果一切正常,您可以将其更改回原始状态并再次运行


如果文件数量不同,只需将140000替换为最后一个文件的数量。

效率不高,但因为您只需要运行一次:

for i in `seq 1 140000`; do
  mv $i.png `printf %06d $i`.png
done
for i in *.png
do
    name=${i%.png}
    [[ $name =~ ^[0-9]+$ ]] && mv $i "$(printf '%06d' $name).png"
done
编辑:我可能错误地认为您使用的是Linux。这在Windows上不起作用

编辑:是的,这应该在Mac OS X中工作。您可以将其保存到文件中,而不是在提示符中键入这些行。通常,您会使用rename.sh这样的名称保存这样的文件。然后您可以在终端上运行它,如下所示:

sh rename.sh
如果您不确定,可以将中压线路更改为:

echo mv $i.png `printf %06d $i`.png
这将在屏幕上打印将要执行的命令。然后,如果一切正常,您可以将其更改回原始状态并再次运行


如果文件的数量不同,只需将140000替换为最后一个文件的数量。

如果您使用的是Windows

for i in *.png
do
    name=${i%.png}
    [[ $name =~ ^[0-9]+$ ]] && mv $i "$(printf '%06d' $name).png"
done
@echo off
setlocal enableDelayedExpansion
for %%F in (*.png) do (
  set "name=00000%%~nF"
  ren "%%F" "!name:~-6!.png"
)

如果您正在使用Windows

@echo off
setlocal enableDelayedExpansion
for %%F in (*.png) do (
  set "name=00000%%~nF"
  ren "%%F" "!name:~-6!.png"
)

我用的是MacOSX,所以这一定行得通吧?我查过了,finder说它是121596个文件,但当我复制粘贴到另一个dit时,它是140000中的一部分,所以我必须用脚本中的140000做什么?我还必须将其键入一行或三次?我将kev的答案标记为可接受的原因,因为他的答案更干净,我认为根据这一点选择stackoverflow的质量很重要。我用了他的台词。不过,你在这方面帮了大忙,谢谢你。希望我能标记2个答案…我使用MacOSX,所以这一定能正常工作?我查过了,finder说它是121596个文件,但当我复制粘贴到另一个dit时,它是140000中的一部分,所以我必须用脚本中的140000做什么?我还必须将其键入一行或三次?我将kev的答案标记为可接受的原因,因为他的答案更干净,我认为根据这一点选择stackoverflow的质量很重要。我用了他的台词。不过,你在这方面帮了大忙,谢谢你。希望我能标记2个答案…我必须在1次内键入此答案,还是在每行后按回车键?您可以在一行中输入所有答案;我必须在每行输入一次,还是在每行后按回车键?您可以在一行中输入所有内容;