[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[代码合集] 求BAT脚本批量修改文件名

l批量修改文件名,(同文件夹中这样文件很多)。
要求:1.文件名前批量加"DKSYT"  ;  2.批量删除“_刘堂怀_附证附图” ; 3.批量修改扩展名小写变大写;4. 批量在扩展名前加“J”

421182103206000130_刘堂怀_附证附图.pdf
421182103206000175_刘辉沼_附证附图.pdf
421182103206000270_刘镜清_附证附图.pdf
421182103206000271_刘辉福_附证附图.pdf
421182103206000386_刘乾堂_附证附图.pdf
421182103206000399_刘堂全_附证附图.pdf

将上面文件名修改成

DKSYT421182103206000130J.PDF
DKSYT421182103206000175J.PDF
DKSYT421182103206000270J.PDF
DKSYT421182103206000271J.PDF
DKSYT421182103206000386J.PDF
DKSYT421182103206000399J.PDF

@echo off

Setlocal Enabledelayedexpansion

set "str1=421182"

set "str2=DKSYT421182"

//将文件名前添加DKSYT字符
for /f "delims=" %%i in ('dir /b *.*') do (

set "var=%%i" & ren "%%i" "!var:%str1%=%str2%!")


@echo off
setlocal enabledelayedexpansion
set n= 23
//保留文件名前23个字符
for /f "delims=" %%a in ('dir /a-d /b *.*') do (
set "name=%%~na"
ren "%%~a" "!name:~0,%n%!%%~xa"
)

ren *.pdf *.PDF
//将扩展名pdf更改为PDF

TOP

求大佬帮我完善一下代码。还有一个+“J”的要求没有完成。

TOP

回复 5# qixiaobin0715

谢谢老师的指点。

TOP

回复 4# hfxiang


    谢谢老师的指点!

TOP

回复 5# qixiaobin0715


    最优答案!

TOP

回复 4# hfxiang


    老师你的代码很好!首先谢谢你的辛勤付出,代码执行一次能达到我想要的结果,但不足之处是,如果不注意执行了第2次,文件名又在修改,并删除了部份文件,造成数据丢失。

TOP

回复 10# 77七


    谢谢老师指点。

TOP

返回列表