Windows系统使用bat批量修改文件名的使用示例

admin 轻心小站 关注 LV.19 运营
发表于DOS/BAT教程版块 教程

在Windows系统中,批处理(batch)文件可以用于执行批量文件重命名任务。以下是一些使用批处理文件来修改文件名的示例:示例1:批量添加前缀假设你有一个包含多个.txt文件的文件夹,你想给所有文件

在Windows系统中,批处理(batch)文件可以用于执行批量文件重命名任务。以下是一些使用批处理文件来修改文件名的示例:

示例1:批量添加前缀

假设你有一个包含多个.txt文件的文件夹,你想给所有文件名添加一个前缀“Prefix_”。

@echo off
setlocal enabledelayedexpansion

:: 设置文件夹路径和前缀
set "folder_path=C:\Path\To\Your\Folder"
set "prefix=Prefix_"

:: 遍历文件夹中的所有.txt文件
for %%f in ("%folder_path%\*.txt") do (
    :: 获取不包含扩展名的文件名
    set "filename=%%~nf"
    :: 重命名文件,添加前缀
    ren "%%f" "!prefix!%%~nf"
)

echo Renaming completed.
endlocal

示例2:批量更改文件扩展名

假设你有一些.txt文件,你想将它们全部更改为.bat文件。

@echo off
setlocal enabledelayedexpansion

:: 设置文件夹路径
set "folder_path=C:\Path\To\Your\Folder"

:: 遍历文件夹中的所有.txt文件
for %%f in ("%folder_path%\*.txt") do (
    :: 重命名文件,更改扩展名
    ren "%%f" "%%~nf.bat"
)

echo Extension change completed.
endlocal

示例3:批量删除文件名中的特定文本

假设你想从文件名中删除特定的文本,比如“old_”。

@echo off
setlocal enabledelayedexpansion

:: 设置文件夹路径
set "folder_path=C:\Path\To\Your\Folder"

:: 遍历文件夹中的所有文件
for %%f in ("%folder_path%\*old_*") do (
    :: 获取不包含特定文本的文件名
    set "newname=%%~nf"
    set "newname=!newname:old_=!"
    :: 重命名文件
    ren "%%f" "!newname!%%~xf"
)

echo Text removal completed.
endlocal

示例4:批量按照日期重命名文件

假设你想根据文件的创建日期来重命名文件,格式为“YYYYMMDD_HHMMSS”。

@echo off
setlocal enabledelayedexpansion

:: 设置文件夹路径
set "folder_path=C:\Path\To\Your\Folder"

:: 遍历文件夹中的所有文件
for %%f in ("%folder_path%\*") do (
    :: 获取文件的创建日期
    set "date=%%~tf"
    set "date=!date:~0,4!!date:~4,2!!date:~6,2!"
    set "time=!date:~8,2!!date:~10,2!!date:~12,2!!date:~14,2!"
    set "newname=!date!_!time!%%~xf"
    :: 重命名文件
    ren "%%f" "!newname!"
)

echo Renaming by date completed.
endlocal

在使用这些脚本之前,请确保你已经备份了重要文件,以防止意外的文件丢失或损坏。此外,根据你的具体需求,你可能需要调整脚本中的路径和文本。在运行脚本之前,最好先在一个小的文件集上测试,以确保脚本按预期工作。

文章说明:

本文原创发布于探乎站长论坛,未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,探乎站长论坛平台仅提供信息存储空间服务。

评论列表 评论
发布评论

评论: Windows系统使用bat批量修改文件名的使用示例

粉丝

0

关注

0

收藏

0

已有0次打赏