我目前有一个只包含两个文件的Windows文件夹: vacation.jpg 和 summer.avi
我想要的是使用.jpg扩展名之前的文本在vacation.avi中重命名summer.avi。
例如,如果我有另一个带有christmas.jpg和summer.avi的文件夹,则.avi文件将被重命名为christmas.avi。
非常感谢任何帮助!
答案 0 :(得分:0)
您可以使用~n
参数扩展名来获取不带扩展名的文件名。该脚本需要与jpg和avi位于同一目录中,但是如果要在多个目录上运行它,可以将整个内容包装在第二个for
循环中。
@echo off
setlocal enabledelayedexpansion
:: This assumes there is only one avi file in the folder
for /F %%A in ('dir /b *.jpg') do (
set basename=%%~nA
ren *.avi !basename!.avi
)
答案 1 :(得分:-1)
这应该可行,但我还没有测试过:
@echo off
for %%i in (*.jpg) do set src=%%i
ren *.avi %src%