[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]BAT怎样扫描文件夹下的文件并生成htm?

d:\Zhou\Desktop\1920>dir /a /b /s *cov*.*
d:\Zhou\Desktop\1920\jvltmgjv\3l99bnqu\lxktrwjt_cov.jpg
d:\Zhou\Desktop\1920\jvltmgjv\qzb9exo7\k6vst4sy_cov.jpg
d:\Zhou\Desktop\1920\jvltmgjv\vd6r00mv\bnvxb9il_cov.jpg
d:\Zhou\Desktop\1920\vi4stelv\3l99bnqu\lxktrwjt_cov.jpg
d:\Zhou\Desktop\1920\vi4stelv\qzb9exo7\k6vst4sy_cov.jpg
d:\Zhou\Desktop\1920\vi4stelv\vd6r00mv\bnvxb9il_cov.jpg

文件夹名是多个英文加数字构成,文件名也是这样,但每个目录下的文件名都含有 “cov”,如何批量扫描这个目录然后然后生成以下htm代码?


<a href="jvltmgjv/3l99bnqu/" target="_blank"><img src="jvltmgjv/3l99bnqu/lxktrwjt_cov.jpg" width="300" height="300" /></a>

扫描文件夹下的文件并生成htm
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 10# air_zq
  1. @echo off
  2. >photo.htm echo.
  3. for /r D:\ %%i in (*cov*.*) do (
  4. set/a n+=1
  5. >>photo.htm echo.^<a href="%%~pi" target="_blank"^>^<img src="%%i" height="200" /^>^</a^>)
  6. >>photo.htm echo.共找到%n%个文件
  7. pause
复制代码

TOP

本帖最后由 air_zq 于 2013-10-8 20:04 编辑

回复 9# foxJL


    抛开输出n个htm,找到文件夹 含有 *cov*.* 的4个文件,打开这个网页后,会显示4个图片对吧。然后在图片后面要显示“只找到4个文件。” 如果找到3个,那就显示“只找到3个文件。”这个4或者3 如何用bat输出呢?
这个找到的值是找到图片个数的值,不是找到htm个数的值

TOP

回复 8# air_zq


    现在是找到5个文件生成1个htm网页,你是要在htm网页中显示总数还是只显示每个htm中的数量

TOP

回复 5# foxJL


    foxJL 大,有什么办法可以输出结果? 比方,只找到4个,如何输出4的值体现在 htm中 呢?

TOP

回复 5# foxJL


    感谢 foxJL大.

TOP

高手

TOP

回复 4# air_zq


    下次请一次性把问题描述清楚
  1. @echo off & setlocal enabledelayedexpansion
  2. set n_1=0
  3. for /r d:\ %%i in (*cov*.*) do (
  4. set /a n+=1
  5. if !n! leq 5 (>>photo-!n_1!.htm echo.^<a href="%%~pi" target="_blank"^>^<img src="%%i" height="200" /^>^</a^>) else (
  6. set /a n_1+=1
  7. set n=1
  8. >>photo-!n_1!.htm echo.^<a href="%%~pi" target="_blank"^>^<img src="%%i" height="200" /^>^</a^>
  9. )
  10. )
  11. pause
复制代码
2

评分人数

TOP

回复 2# foxJL

    老感谢了 ,代码简直太棒了。有点点小问题,因为输出的多,可不可以当输出多个htm,比方:每找到5个cov,产生一个文件。

还有就是输出htm,比方 图是 c:\1\1.jpg   点链接要打开 c:\1\   而不是图片。

TOP

回复 1# air_zq
  1. for /f "tokens=1-3 delims=/" %%a in ('dir d:\Zhou\Desktop\1920 /a-d /s /b *cov.jpg') do echo ^<a href="%%a/%%b/" target="_blank"^>^<img src="%%a/%%b/%%c" width="300" height="300" /^>^</a^>>>1.htm
复制代码
Still with wax

TOP

看看这个行不行
  1. @echo off
  2. echo.>photo.htm
  3. for /r D:\ %%i in (*cov*.*) do (
  4. >>photo.htm echo.^<a href="%%i" target="_blank"^>^<img src="%%i" width="200" /^>^</a^>
  5. )
  6. pause
复制代码

TOP

返回列表