一个文件夹编号bat文件的修改

查看 84|回复 5
作者:jack98   
需求:不想每次改前缀都手动修改    ren "%%a" "!count!%%~xa"
比如改成1-1,1-2……要修改成    ren "%%a" "1-!count!%%~xa"
但是我采用  set /p "prefix=请输入要添加的前缀:"    的时候
每次提示重命名成功,实际上没有运行
求大佬看看,我应该是多一个什么样的输入,能每次不用修改1-这样的前缀。
在运行cmd的时候,直接能让我输入。
以下是我的代码:
@echo off
set /p folder=请输入要重命名视频所在的文件夹路径:
set /p num=请输入从几开始编号:
setlocal enabledelayedexpansion
set count=%num%
for /r "%folder%" %%a in (*.mp4, *.avi, *.mkv) do (
    ren "%%a" "!count!%%~xa"
    set /a count+=1
)
echo 完成!
pause

前缀, 请输入

sfl4800   


jack98 发表于 2023-6-3 19:05
@echo off
chcp 65001
setlocal enabledelayedexpansion

@echo off
set /p folder=请输入要重命名视频所在的文件夹路径:
set /p num=请输入从几开始编号:
set /p prefix=请输入要添加的前缀(直接按回车则不添加):
setlocal enabledelayedexpansion
set count=%num%
for /r "%folder%" %%a in (*.mp4, *.avi, *.mkv) do (
    if not "%prefix%"=="" (
        ren "%%a" "%prefix%-!count!%%~xa"
    ) else (
        ren "%%a" "!count!%%~xa"
    )
    set /a count+=1
)
echo 完成!
pause
试试这样。我这里是可以的。
sfl4800   

@echo off
setlocal enabledelayedexpansion
set /p "prefix=请输入要添加的前缀:"
set count=1
for %%a in (*) do (
  ren "%%a" "%prefix%!count!%%~xa"
  set /a count+=1
)
endlocal
  试试这个?
jack98
OP
  


sfl4800 发表于 2023-6-3 18:58
@echo off
setlocal enabledelayedexpansion

给我桌面重命名了……
我前面一样加入了输入我的路径,好像没用诶
jack98
OP
  

[i]
@echo off
chcp 65001
setlocal enabledelayedexpansion
set /p folder=请输入要重命名视频所在的文件夹路径:
set /p "prefix=请输入要添加的前缀:"
set count=1
for %%a in (*) do (
  ren "%%a" "%prefix%!count!%%~xa"
  set /a count+=1
)
endlocal
jack98
OP
  


sfl4800 发表于 2023-6-3 18:51
@echo off
set /p folder=请输入要重命名视频所在的文件夹路径:
set /p num=请输入从几开始编号:

非常感谢大佬!!!
您需要登录后才可以回帖 登录 | 立即注册

返回顶部