用批处理批量修改文件名,简单暴力
程序员文章站
2022-06-14 16:56:10
...
批量修改文件扩展名
有时候我们会遇到,在一个文件夹内有很多个文件,需要修改这些文件的扩展名,一个一个去修改就太麻烦了,其实,我们可以用bat批处理批量修改文件扩展名,只需一句简单的命令就可以实现。
例如:你要把扩展名为.mp4的文件改成.mp3格式,那么方法如下:
1,在需要修改扩展名的文件夹内新建一个记事本
2,在记事本中输入以下内容
ren *.mp4 *.mp3
3,将这个记事本的扩展名改名为.bat
4,双击运行这个bat文件即可批量将该文件夹内的所有.mp4文件改成.mp3了
批量添加文件扩展名
先看下面代码:
ren * *.mp3
和上面的代码相似,但它运行后将所有文件改成.mp3了,有扩展名的被改成.mp3,无扩展名的被加上.mp3
下面,给出一些完整的参考代码
批量修改文件前缀名
批量修改文件名是批处理的典例之一。如下代码
chcp 65001>nul
@ echo off
cls
title 批量修改文件名
echo:
setlocal EnableDelayedExpansion
set ext=.*
set /p ext=请输入文件的扩展名(不输入则表示所有类型):
if not "%ext:~0,1%"=="." set ext=.%ext%
echo:
set /p prefix=请输入生成的文件名前缀:
set /a num=1
for %%i in (*%ext%) do (
ren "%%i" "%prefix%!num!%ext%"
set /a num+=1
)
echo 按任意键继续
pause>nul
批量剔除指定字符
这个就不认什么前缀后缀了,指定字符就杀了
chcp 65001>nul
@ echo off
cls
title 批量剔除指定字符
echo:
setlocal enabledelayedexpansion
set /p str=请输入要剔除的字符串:
for %%i in ("*%str%*") do (
set FileName=%%i
set FileName=!FileName:%str%=""!
ren "%%i" "!FileName!"
)
echo 按任意键继续
pause>nul
批量剔除左边部分字符
从左边按位数来删除部分字符,其实本质上都是重命名啦
chcp 65001>nul
@ echo off
cls
title 批量剔除左边部分字符
echo:
setlocal enabledelayedexpansion
set ext=.*
set /p ext=请输入文件的扩展名(不输入则表示所有类型):
if not "%ext:~0,1%"=="." set ext=.%ext%
echo:
set /p n=请输入左边剔除的位数:
for %%i in ("*%ext%") do (
set FileName=%%i
set FileName=!FileName:~%n%!
ren "%%i" "!FileName!"
)
echo 按任意键继续
pause>nul