用批处理文件改文件名

转载 2006年06月05日 17:39:00

问题:

我现在需要把一个文件夹里的几十个文件改名为对应的文件名,对应关系已经有了。
比如说
原来的文件名 需要改为的文件名
北京.txt 01.txt
天津.txt 02.txt
河北.txt 03.txt
我想写一个bat文件一次执行所有的修改,请问这个批处理文件该怎么写?原来dos时代的东西学的不好。谢谢各位了

解决方法:

 


 


假设你已经有一个文件city.txt有如下内容:
北京 01
天津 02
河北 03
……
那么可以这样写这个批处理:
@ECHO OFF
FOR /F "tokens=1,2" %%a IN (city.txt) DO (
IF EXIST %%a% %.txt (
REN %%a% %.txt %%b% %.txt
)
)

 


 


那首先要修改city.txt的内容成这样格式(分隔符改为逗号,):
北京,0001
天津,0002
河北,0003
bbc radio,0004
……

批处理改为:
@ECHO OFF
FOR /F "tokens=1,2 delims=," %%a IN (city.txt) DO (
IF EXIST "%%a% %.txt" (
REN "%%a% %.txt" %%b% %.txt
)
)

 

说明: 

 


 


恩,挺好使的,这位大哥能简单解释一下吗?我不知道%%a是什么用的,看了windows的帮助还是不太明白.我把你的语句改成了
FOR /F "tokens=1,2" %a IN (city.txt) DO REN "%a.txt" %b.txt
这在命令行下能运行可是在bat中就不行了,为什么呢?

 


 


你可以查看FOR/?,里面有说到,在命令行中使用变量时,变量名前只用一个%,而用在批处理中要用两个%%。

之所以改名语句要
REN "%%a% %.txt" %%b% %.txt
这样写,这也是我试出来的,呵呵!你把前面的@ECHO OFF去掉,再执行这个bat,就会看到CMD是如何替换这些变量的了。(我就是这样“调试”bat的^_^)

Windows_超级简单批处理命令批量修改文件名

额,首先我们看一下这个需求场景,有时候我们恢复照片后,变成了无扩展名的文件,或者我们需要在所有的文件名重命名加上后缀或前缀,这时候我们不需要安装任何程序,直接一条批处理就能完成。...
  • ls_man
  • ls_man
  • 2014年11月08日 11:47
  • 21575

批处理将文件名大写改为小写

@echo off   setlocal setlocal ENABLEDELAYEDEXPANSION set path="D:\Program Files\MATLAB\toolbox\sheff...
  • xiakexiaohu
  • xiakexiaohu
  • 2017年02月24日 16:07
  • 1516

批处理文件批量修改文件名

首先,在c盘创建一个新的文件夹,并且将要重命名的文件们拷贝到该文件夹中。 2.win+r,打开dos窗口,运行如下图所示命令行 3.所有文件的文件名在创建的excel中展示。 4.在对...
  • u013036274
  • u013036274
  • 2016年08月21日 14:49
  • 1269

windows cmd 批处理将文件名改为小写

windows cmd 改文件名为小写
  • llq108
  • llq108
  • 2015年08月01日 12:22
  • 2640

利用Matlab批量修改文件名

Matlab批量修改文件名
  • rs_huangzs
  • rs_huangzs
  • 2017年02月23日 15:58
  • 1855

Java程序修改文件名

package script;import java.io.File;import java.io.IOException;public class Realname { public static ...
  • quanleilei123
  • quanleilei123
  • 2010年02月24日 23:42
  • 20661

如何书写批处理文件?(批处理文件的介绍及编写规范)

批处理的介绍 扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提...
  • zisongjia
  • zisongjia
  • 2017年03月02日 12:01
  • 2692

java批量修改文件名--

看到java视频在播放器列表中的文件名很长,每次都需要拉长列表才能看清全名,故写此代码批量修改该文件夹下所有文件名...
  • u014726937
  • u014726937
  • 2015年07月31日 09:53
  • 602

用BAT批量修改文件名方法

改名命令: ren a.txt b.txt 将a.txtgaiwe
  • a358463121
  • a358463121
  • 2014年06月29日 18:53
  • 971

用Excel和DOS命令的方法批量修改文件名

在你的Windows电脑上批量修改文件名是非常简单的。选择所有的文件,按F2,然后输入一下描述性的文本。Windows将会在每个文件名中加上一个唯一的序列数字。这是一个相当快捷的解决方案,但是并不是很...
  • u014133617
  • u014133617
  • 2014年12月28日 11:31
  • 567
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用批处理文件改文件名
举报原因:
原因补充:

(最多只允许输入30个字)