用Windows的批处理批量更改文件名

费了半天劲,查了不少的资料,在一个同事的帮助下完成的,
查资料的时候发现,windows自带的帮助是追好用的。
程序代码如下:

@echo off  &  setlocal EnableDelayedExpansion

@REM 
*********************************************************************************

@REM 
****   以下代码可以将与本程序在同一个目录下的.txt文件从命名                  ****

@REM 
****   原有的文件的名字长度要求是13(包括.txt),新文件名是将原文件的前三位去掉   ****

@REM 
****   例:原文件名是000000100.txt,重命名后000100.txt                           ****

@REM 
*********************************************************************************

@REM 取出.txt文件列表放到临时文件里
dir 
/ ^| find  " *txt "   >   1 .temp


set  oraF =
set  newF =
set  sta =
     echo 
======================================================================
     echo   Ora File 
^|  New File  ^|  Status
     echo 
======================================================================

 

@REM 循环取临时文件中的数据
for   / " eol=# tokens=1,2* delims=\n "   %% in  ( 1 .temp)  do  (
     
set  oraF =%% i

@REM  截取旧的文件名,获得新的文件名  

     
set  newF =! oraF: ~ 3 , 10 !

 

@REM  新旧文件的存在判断

    
if  exist  ! oraF !  (  if  not exist  ! newF !  (  set  sta = OK)  else  (  set  sta = New file  is  exist !  ) 

else  (  set  sta = Ora file  is  not exist !  )

    
if   ! sta !== OK (

 

@REM 用ren命令重命名,如果出错将错误信息
? 出到2.temp文件中

       ren 
! oraF !   ! newF !   >   2 .temp
       
if  not exist  ! oraF !  (  if  exist  ! newF !  (  set  sta = sucess )  else  (  set  sta = Error) ) 

else  (  set  sta = Error )
    )


     echo 
! oraF !   ^|   ! newF !   ^|   ! sta !

 

@REM 如果出错将错误信息输出到控制台中
     
if  exist  2 .temp (
         type 
2 .temp
         del 
2 .temp
      )
     echo 
----------------------------------------------------------------------
)
del 
1 .temp

转载于:https://www.cnblogs.com/sun_moon_earth/archive/2007/12/06/985140.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值