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

[文件操作] 批处理怎样根据关键字在文件名前加特定的前缀?

[复制链接]
发表于 2021-5-13 22:05:28 | 显示全部楼层
本帖最后由 qixiaobin0715 于 2021-5-14 06:25 编辑

回复 15# newswan
接受建议重新修改代码:
1.文件名开头是数字不再重命名。
2.对关键词超过10个时进行修正,前面添加的数字还是两位(01、02、03...10、11...)。
3.修改代码时,发现11楼代码有误,已修改。
  1. @echo off
  2. set var=山东 广州 四川
  3. setlocal enabledelayedexpansion
  4. for /f "delims=" %%a in ('dir /b /s /a-d') do (
  5.     set "str1=%%~na"
  6.     set n=100
  7.     for /f "tokens=* delims=0123456789" %%i in ("!str1!") do set "str2=%%i"
  8.     for %%j in (%var%) do (
  9.         set /a n+=1
  10.         if not "!str1!"=="!str1:%%j=!" if "!str1!"=="!str2!" ren "%%a" "!n:~1!.!str1!%%~xa"
  11.     )
  12. )
  13. pause
复制代码
 楼主| 发表于 2021-5-13 22:59:42 | 显示全部楼层
回复 10# newswan


    非常感谢,但是运行还是不成功。

能否将你的测试包发给我,试一下
 楼主| 发表于 2021-5-13 23:02:36 | 显示全部楼层
回复 16# qixiaobin0715


    刚测试了一下,没有用
发表于 2021-5-14 00:21:36 | 显示全部楼层
本帖最后由 newswan 于 2021-5-14 00:31 编辑

回复 17# ngb0519

http://www.bathome.net/viewthrea ... hlight=%B5%F7%CA%D4

    发不了附件,邮箱?
发表于 2021-5-14 06:29:32 | 显示全部楼层
本帖最后由 qixiaobin0715 于 2021-5-14 06:35 编辑

回复 18# ngb0519
16楼代码出了点小状况,已修改并测试成功。
使用前必须将批处理文件保存为ANSI编码
发表于 2021-5-14 08:41:25 | 显示全部楼层
回复 12# hlzj88


    我这个只能改以关键字开头的文件名,要是关键字不在前面的,在中间或是其它地方的,就改不了了。比如:文件名为“广州上月报表.docx”,可以批处理为“01.广州上月报表.docx”,
要是文件名为“上月广州的报表.docx”,这种的就改不了滴。思路就是,把文件名提出来,一行一行分析,凡是哪行有指定关键字的,就在该行前面加指定编号。
 楼主| 发表于 2021-5-14 09:40:11 | 显示全部楼层
回复 19# newswan

感谢大神的关心,我的邮箱是:ngb0519@163.com。
再次感谢
 楼主| 发表于 2021-5-14 14:11:38 | 显示全部楼层
回复 20# qixiaobin0715


    刚才测试了一下,大神你的代码,非常神奇啊!
   有用,以后我要多向你请教喽!
   千万不要嫌弃啊!
发表于 2021-5-14 14:28:15 | 显示全部楼层
一起学习,共同进步
发表于 2021-5-15 14:42:01 | 显示全部楼层
@echo off
Setlocal Enabledelayedexpansion
for /f  %%i in ('dir /b *.*') do (
  if str keyword=广州 ren %%i 01%%i
  if str keyword=山东 ren %%i 02%%i
  if str keyword=四川 ren %%i 03%%i
)
exit
整体的思路是这个样子的,具体的代码,还请其他大神优化一下,这个应该可以满足楼主的需求。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 16:50 , Processed in 0.021258 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表