读取文件并将其文件名替换为当前日期

时间:2010-07-02 11:22:57

标签: batch-file

问题1:

我想附加一个序列号为no的文件名列表。在当前日期,例如

最初:

ABCDEFG-ALL-18269423.TXT
ABCDEFG-ALL-18269521.TXT
QWERTTY-ALL-18269530.TXT
QWERTTY-ALL-18269600.TXT

结果:

ABCDEFGJul01.TXT
QWERTTYJul01.TXT

(仅将具有最新序列号的文件复制并重命名为另一个文件夹)

是否有可以实现此目的的基本脚本?

问题2

我有一个文件列表在同一个文件夹中,所有文件都以以下行开头:

CRM-678A      xxxxxxxxxx  xxxx
Unit: 1234     xxxxxxxxxxx xxx

我想将每个文件重命名为(使用上面的例子):

CRM-678A-1234-01Jun10.txt

请您建议为上述方法制作批处理脚本吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

这可能会让你有所作为

@echo off
  for %%a in (*ALL*.txt) do call :EachFile %%a
goto :eof

:EachFile
  @echo %1
  set FileName=%1
  set FileName=%FileName:~0,7%
  @echo %Filename%
goto :eof  

您可以使用%DATE%env变量以及在命令行上运行“help set”时可以找到的内容来完成剩下的工作