batch-file - 使用脚本重命名多个文件

标签 batch-file windows-console

我在这里找到了这个脚本并对其进行了修改。它一次仅适用于 1 个文件,不适用于多个文件。我怎样才能让这个脚本重命名指定目录中的多个文件?

@echo off
setlocal enabledelayedexpansion
set X=64
set Y=4
set FOLDER_PATH=c:\temp\renamefiles\files
pushd %FOLDER_PATH%
for %%f in (*) do if %%f neq %~nx0 (
  set "filename=%%~nf"
  set "filename=!filename:~%X%,-%Y%!"
  ren "%%f" "!filename!%%~xf"
)
popd    

最佳答案

我不太明白你的意思,但这对我有用:

ren "path\to\your\folder\*.*" "foo.*"

如果执行此命令,每个文件,无论是否有 .txt、.png、.foo、.bar、.. 文件。

该文件夹中的每个文件都将重命名为“foo”。 但是,如果有四个 .png 文件,则只有一个 .png 文件落入 foo.png,因为当已经存在具有完全相同名称的其他文件时,其他文件无法重命名。

关于batch-file - 使用脚本重命名多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30790514/

相关文章:

batch-file - 具有嵌套循环的批处理文件中的范围问题

c# - 如何将特殊字符 (0x80..0x9F) 写入 Windows 控制台?

shell - 如果 bat 文件突然终止,则恢复默认工作目录

c - 如何从 Code::Blocks 的输出窗口中删除与执行相关的文本

php - Cygwin 没有使用我期望的 PHP 版本

Python脚本不在命令提示符下打印输出

windows - 从批处理文件重复执行 Windows 命令?

batch-file - 使用批处理文件提取 .rar 文件

batch-file - 进程结束后执行命令的批处理文件

batch-file - 使用 for 从 url 批量下载图像