Board logo

标题: [文本处理] 求助批处理执行后cmd窗口为什么不会关闭? [打印本页]

作者: pan528    时间: 2016-4-17 12:13     标题: 求助批处理执行后cmd窗口为什么不会关闭?

本帖最后由 pan528 于 2016-4-17 14:19 编辑

最近编了二个批处理,根据下载的时间信息,打开当天的文本。
520目录是下载的源文本,文件名为:13967280,...
New目录是整理好了的文本;
NewTxt.txt是带源文本序号的目录索引:如,13967280_第690章_心中有愧

第一个批处理:
  1. @echo off
  2. set n=
  3. set m=
  4. setlocal enabledelayedexpansion
  5. for /f %%a in ('date /t')do set n=%%a
  6. for /f "delims=" %%i in ('dir /o:-n /s /b new\*.*') do (
  7. set m=%%~ti
  8. if "!m:~0,10!" == "!n:~0,10!" start new\%%~nxi
  9. )
  10. endlocal
  11. goto:eof
复制代码
由于new目录在替换文本时会使非当天的文本也受到修改,因此,以new目录为参照,打开的不一定是当天下载的文本。故以520目录的源文本时间为参照,打开的当天文本是准确的。
第二个批处理:
  1. @echo off
  2. set n=
  3. set m=
  4. setlocal enabledelayedexpansion
  5. for /f %%a in ('date /t')do set n=%%a
  6. for /f "delims=" %%i in ('dir /o:-n /s /b 520\*.*')do (
  7. set m=%%~ti
  8. for /f "tokens=1-3,* delims=_" %%x in (NewTxt.txt)do (
  9. if "!n:~0,10!" == "!m:~0,10!" if %%~ni == %%x if exist new\%%y_%%z.txt start new\%%y_%%z.txt
  10. )
  11. )
  12. endlocal
  13. goto:eof
复制代码
第一个批处理,可以在打开文本后自动关闭DOS窗口;第二个批处理,文本能正常打开,但DOS窗口不能自动关闭。是什么原因?请高手给予帮助,指出原因。谢谢!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2