BAT文件:重命名目录中的wav文件,但单个文件名除外?

时间:2014-08-27 20:41:48

标签: batch-file

我试图写一个执行此操作的bat文件:

  1. 删除两个文件:Temp.Wav Temp.lip
  2. 将目录中的所有wav文件重命名为temp.wav
  3. 我很遗憾地被困住了几个小时。

    @echo off
    setlocal enableDelayedExpansion
    for %%F in (*.wav) do (
      set "name=%%F"
      ren "!name!" "!name:Temp.wav!"
    )
    

2 个答案:

答案 0 :(得分:0)

使用小批量文件很容易解决此任务。必须调整第二行的目录路径。

@echo off
set "WorkingDirectory=C:\Temp\WavFiles"

if exist "%WorkingDirectory%\Temp.wav" del "%WorkingDirectory%\Temp.wav"
if exist "%WorkingDirectory%\Temp.lip" del "%WorkingDirectory%\Temp.lip"

rem The loop below renames just first found *.wav file in the directory.
for %%F in ("%WorkingDirectory%\*.wav") do (
   ren "%%F" Temp.wav
   goto :EndBatch
)
:EndBatch
set WorkingDirectory=

答案 1 :(得分:0)

这是一种极简主义的方式 - 删除cd命令使其在当前文件夹中运行。

@echo off
cd /d "c:\folder"
del Temp.wav 2>nul
del Temp.lip 2>nul
ren *.wav Temp.wav 2>nul