Bat文件批量操作


批量操作

批量替换文件名称的部分名称

@echo off
set /p str1= 请输入要替换的文件(文件夹)名字符串(可替换空格):
set /p str2= 请输入替换后的文件(文件夹)名字符串(若删除直接回车):
echo.
echo 正在操作中,请稍候……
for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (
if "%%~nxa" neq "%~nx0" (
set "file=%%a"
set "name=%%~na"
set "extension=%%~xa"
call set "name=%%name:%str1%=%str2%%%"
setlocal enabledelayedexpansion
ren "!file!" "!name!!extension!" 2>nul
endlocal
)
)
exit

新建txt文档,将上述代码输入,然后更改后缀名为bat

双击bat文件即可。

注意事项:
注意:
需要将该执行bat文件放入想要修改的文件所在的文件夹内
bat操作只对与bat在同一个文件夹中的文件起作用,针对全部文件类型

首先输入原文件中想要替换的部分文件名称
例子:
文件夹内存在文件
“张三的作业.txt”
这里输入 张三

再输入想要替换成的文件名称(如果输入为空,直接敲打回车,则删除之前选择的部分文件名)

如果输入 李四
则文件改为 “李四的作业.txt”

如果不输入直接回车
则文件名变为 “的作业.txt”

批量生成某一类型的文件

@echo off
set /p w=请输入要生成文件的格式(即扩展名并以回车结束):
set /p name=请输入要生成文件的格式(即扩展名并以回车结束):
set a=0
:loop
set /a a+=1
type nul>%name%%a%.%w%
if %a% == 20 goto end
goto loop
:end

上述同理。

注意事项:

首先输入要生成的文件类型的后缀名称(类似txt,docx,csv)
再输入文件名称
a为生成相同文件名的序列

set /a a+=1 将结尾的数字1改变递增
 0 1 2 3 4
set /a a+=2
 0 2 4 6 8
if %a% == 20 goto end

这里是创建文件个数,这里设置为20个。


评论
  目录