标题: [文本处理] [已解决]处理一批文件的BAT脚本为何只处理最后一个? [打印本页]
作者: mrhxn 时间: 2012-10-11 14:15 标题: [已解决]处理一批文件的BAT脚本为何只处理最后一个?
我想用下面的代码处理一批文件,但就处理了最合一个,其它的不处理,不知怎么办,请帮帮我?- @echo on
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir/a-d/b *.flv') do (
- set "var=%%i"
- set v=LoadPlugin("D:\greensoft\MeGUI\tools\ffms\ffms2.dll")
- echo !v!)>!var!.avs
- echo FFVideoSource("j:\!var!" threads=1) >>!var!.avs
- echo #deinterlace >>!var!.avs
- echo crop(0 58 0 -26) >>!var!.avs
- echo LanczosResize(720 416) # Lanczos (Sharp) >>!var!.avs
- echo #denoise >>!var!.avs
-
- )
- pause
复制代码
作者: wc726842270 时间: 2012-10-11 14:54
本帖最后由 wc726842270 于 2012-10-11 15:24 编辑
还是不想为什么了吧,有点困了- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir/a-d/b *.VBS') do call :edit %%i
- echo.
- set/p=处理完毕,请检验<NUL
- pause>nul&goto eof
- :edit
- set "var=%1"
- set v=LoadPlugin("D:\greensoft\MeGUI\tools\ffms\ffms2.dll")
- echo !v!)>!var!.avs
- echo FFVideoSource("j:\!var!" threads=1) >>!var!.avs
- echo #deinterlace >>!var!.avs
- echo crop(0 58 0 -26) >>!var!.avs
- echo LanczosResize(720 416) # Lanczos (Sharp) >>!var!.avs
- echo #denoise >>!var!.avs
复制代码
看一下写的是否与你要的有出入
作者: mrhxn 时间: 2012-10-11 17:27
谢谢,结果正是我想要的。
作者: mrhxn 时间: 2012-10-12 09:07
不好意思。没仔细看,不能出我要的结果。生成的文件名不对。
作者: apang 时间: 2012-10-12 10:29
- @echo off
- for /f "delims=" %%i in ('dir/a-d/b *.vbs') do (
- (echo LoadPlugin^("D:\greensoft\MeGUI\tools\ffms\ffms2.dll"^)
- echo FFVideoSource^("j:\%%i" threads=1^)
- echo #deinterlace
- echo crop^(0 58 0 -26^)
- echo LanczosResize^(720 416^) # Lanczos ^(Sharp^)
- echo #denoise)>%%i.avs
- )
复制代码
将第二行中的vbs改成你需要的
作者: mrhxn 时间: 2012-10-12 10:42
本帖最后由 mrhxn 于 2012-10-12 10:49 编辑
谢谢,简洁,完全可以了。不过第一个改了一下也可以的:就是路径还是不能处理,- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir/a-d/b *.flv') do call :edit "%%i"
- echo.
- set/p=处理完毕,请检验<NUL&exit
- pause>nul&goto eof
- :edit
- set var=%1
- set v=LoadPlugin("D:\MeGUI\tools\ffms\ffms2.dll")
- echo !v!>!var!.avs
- echo FFVideoSource(!var!, threads=1) >>!var!.avs
- echo #deinterlace >>!var!.avs
- echo crop(0,58,0,-26) >>!var!.avs
- echo LanczosResize(720,416) # Lanczos (Sharp) >>!var!.avs
- echo #denoise >>!var!.avs
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |