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

[文件操作] 求助批处理实现文件名替换

[复制链接]
发表于 2024-12-25 15:33:20 | 显示全部楼层 |阅读模式
各位老师好  麻烦大家帮忙解决使用BAT批量修改文件名  一个文件夹里面有  A (1)  A (2)  A (3) A (4) A (5)  按顺序替换为 北京 上海  天津 广州 海南  (不需要替换为英文) 非常感谢各位老师帮忙
发表于 2024-12-25 17:04:06 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-12-25 21:52 编辑

回复 1# FU586097

  1. @echo off &setlocal enabledelayedexpansion
  2. for %%a in (
  3.    "a (1)=北京"
  4.    "a (2)=上海"
  5.    "a (3)=天津"
  6.    "a (4)=广州"
  7.    "a (5)=海南" ) do set %%a
  8. for /f "delims=" %%F in ('dir /b/a-d "a*).docx" ') do if "!%%~nF!" neq "" ren "%%F" "!%%~nF!%%~xF%"
  9. pause&exit/b
复制代码
 楼主| 发表于 2024-12-25 20:33:56 | 显示全部楼层
回复 2# aloha20200628
谢谢老师 试试无效
发表于 2024-12-25 20:45:50 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-12-25 20:51 编辑

回复 3# FU586097

请检查真实文件名格式与代码中的字面量如 "a (1)" 是否完全一致?真有空格?是英文括号还是中文括号?
再用 chcp 命令检查当前系统码页是 936 还是 65001 ?
 楼主| 发表于 2024-12-25 20:48:26 | 显示全部楼层
本帖最后由 FU586097 于 2024-12-25 20:54 编辑

回复 4# aloha20200628


    谢谢老师  这个不懂  再用 chcp 命令检查当前系统码页是 936 还是 65001 ?
   A (1) A (2) A (3) A (4) A (5)  检查了 这个相同   这些是复制粘贴的
发表于 2024-12-25 21:00:58 | 显示全部楼层
回复 5# FU586097

命令行直接键入 chcp 回车,看其返回值是 936 还是 65001
 楼主| 发表于 2024-12-25 21:12:08 | 显示全部楼层
回复 6# aloha20200628
  谢谢老师  是936
发表于 2024-12-25 21:30:55 | 显示全部楼层
回复 7# FU586097

2楼代码假定被处理的文件名格式如 "a (n).txt" ,其中 n=1,2,... 其扩展名 .txt 任意,要求相应改为 北京.txt, 上海.txt, ... 再请楼主确认是否如此?
 楼主| 发表于 2024-12-25 21:43:37 | 显示全部楼层
本帖最后由 FU586097 于 2024-12-25 21:45 编辑

回复 8# aloha20200628
谢谢老师  扩展名都是  A (1).docx  这个  老师改为这个扩展名
发表于 2024-12-25 22:00:20 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-12-25 22:01 编辑

回复 9# FU586097

模拟了经楼主确认的一楼示例样本,用2楼代码测试已通过》当前文件夹下的 a (n).docx 共5个文件依据其对应序号 n 被更名为 北京.docx, 上海.docx, ...
 楼主| 发表于 2024-12-25 22:17:30 | 显示全部楼层
回复 10# aloha20200628


    谢谢老师 我试了怎么没有效果?
 楼主| 发表于 2024-12-25 22:21:45 | 显示全部楼层
回复 10# aloha20200628

BAT保存时提示 C:\Users\FU8989\Desktop\新建文件夹\A (1).BAT
该文件含有Unicode 格式的字符,当文件保存为 ANSI编码的文本文
件时,该字符将丢失。要保存 Unicode信息,单击下面的“取消”,然
后从编码列表中选择一个Unicode选项。继续吗?
发表于 2024-12-25 22:23:34 | 显示全部楼层
回复 11# FU586097

2楼代码用记事本(ansi 编码)存为 test.bat 运行,与被处理的 *.docx 源文件同目录...
 楼主| 发表于 2024-12-25 22:34:05 | 显示全部楼层
回复 13# aloha20200628


    谢谢老师 保存时提示后  编辑里面有好多  ?号
 楼主| 发表于 2024-12-25 22:35:37 | 显示全部楼层
回复 13# aloha20200628
老师 能加个微信帮忙一下吗  13698925126
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 15:44 , Processed in 0.023078 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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