标题: [文件操作] 批处理for循环给文件名添加前缀时,只要含有 [ 字符,就会无限循环 [打印本页]
作者: bat@ayao 时间: 2023-1-10 22:58 标题: 批处理for循环给文件名添加前缀时,只要含有 [ 字符,就会无限循环
@echo off
Setlocal Enabledelayedexpansion
for %%i in (*.mp4) do (
echo "%%i"
ren "%%i" "[123]""%%i"
)
pause
这段代码执行会一直不断添加前缀[123],经过测试我发现是 [ 字符的问题,请问是什么原因,该如何解决
作者: yakeyun 时间: 2023-1-11 00:02
本帖最后由 yakeyun 于 2023-1-11 00:03 编辑
回复 1# bat@ayao - @echo off
- Setlocal Enabledelayedexpansion
- if exist list.txt del list.txt
- (for %%a in (*.mp4) do echo "%%a") >list.txt
- (for /f %%a in (list.txt) do (
- ren "%%a" "[123]""%%a"
- ))
- if exist list.txt del list.txt
- exit
复制代码
作者: Batcher 时间: 2023-1-11 09:20
回复 2# yakeyun
这样比较省事:- @echo off
- for /f "delims=" %%i in ('dir /b /a-d *.mp4') do (
- echo "%%i"
- ren "%%i" "[123]%%i"
- )
- pause
复制代码
作者: bat@ayao 时间: 2023-1-11 22:50
回复 3# Batcher
66
作者: bat@ayao 时间: 2023-1-11 23:26
回复 3# Batcher
这样写虽然不影响结果 但是会提示错误
作者: bat@ayao 时间: 2023-1-11 23:28
回复 2# yakeyun
谢谢
作者: Batcher 时间: 2023-1-12 09:46
回复 5# bat@ayao
请把3楼代码的报错信息发出来看看?
如果需要上传截图,可以找个图床,例如:
http://bbs.bathome.net/thread-60985-1-1.html
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |