创建批处理文件以重命名文件

时间:2013-11-05 19:51:13

标签: batch-file command-line file-rename

我正在尝试创建批处理文件(filehandling.bat

我在C:\Users\username\Downloads中有一个名为"hita_2013_11_05_19_11_38.csv"的文件,其中日期/时间根据创建的日期/时间而变化

我需要将此文件重命名为"hita.csv"

问题来了,因为它们将永远是目录中需要保留的"hita.csv"文件,除非被上述文件覆盖,因此REN功能无法正常工作,因为它没有覆盖文件

如果"hita_2013_11_05_19_11_38.csv"文件不存在,我还需要它对现有的“hita.csv”文件不做任何更改(什么都不做)。

我已尝试过以下命令但无法正常工作:REN,MOV,ROBOCOPY / MOV

我也试过了:

IF EXIST "C:\Users\username\Downloads\Hita*.csv" ( 
DEL C:\Users\username\Downloads\Hita.csv 
REN "C:\Users\username\DownloadsHita*.csv" Hita.csv 
) ELSE ( 
Echo The file was not found. 
) 

但是此命令仍会出于某种原因删除"hita.csv"文件

2 个答案:

答案 0 :(得分:1)

将测试更改为IF EXIST "C:\Users\username\Downloads\Hita_*.csv"(请注意'*'前面的下划线)。 *通配符匹配0个或多个字符,因此它将与Hita.csvHita_01.csvHitaXYZ.csv匹配。

添加下划线使其仅匹配以Hita_开头的文件。

答案 1 :(得分:0)

您的hita.csvHita*.csv的通配符搜索匹配,因此会将其删除。

我相信您希望您的通配符搜索为Hita?*.csv。问号应该是“正好一个”,而星号是“零或更多”字符,这意味着Hita.csv将不符合该标准。