打开控制面板里的区域选项,修改时间的分隔符(因为系统不允许目录名字有:/\之类的符号),把它改为"-"(或者全角的中文标点的":"),日期格式假设设置为dd-MM-yyyy。
而且bat文件、test.txt文件要和需要改名的文件放在同一目录下。
@ECHO OFF
ren test.txt %DATE%-%TIME%.txt
——————————————————————————
@ECHO OFF
for /f %%1 in (‘date /t’) do ren test.txt %%1.txt
—————————————————————————-
ren 北京.txt 01.txt
ren 天津.txt 02.txt
ren 河北.txt 03.txt
假设你已经有一个文件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
)
)
几个动态变量
%CD% #代表当前目录的字符串
%DATE% #当前日期
%TIME% #当前时间
%RANDOM% #随机整数,介于0~32767
%ERRORLEVEL% #当前 ERRORLEVEL 值
%CMDEXTVERSION% #当前命令处理器扩展名版本号
%CMDCMDLINE% #调用命令处理器的原始命令行
可以用echo命令查看每个变量值,如 echo %time%
注意 %time% 精确到毫秒