Board logo

标题: [文本处理] [已解决]BAT脚本如何将子文件夹中图片批量生成html超链接网页? [打印本页]

作者: baibat    时间: 2021-4-30 17:12     标题: [已解决]BAT脚本如何将子文件夹中图片批量生成html超链接网页?

我有一些图片想要每张图片都转换成html超链接形式的网页,当这些图片位于当前文件夹下时,我使用以下批处理脚本可以生成同名单独的网页:

  1. @echo off
  2. setlocal enableDelayedExpansion
  3. set "file_start=<HTML><HEAD></HEAD><BODY>
  4. set "image_start=<P align=center><IMG SRC=""
  5. set ^"image_end=" class="image"/></P>"
  6. set "file_end=</BODY></HTML>"
  7.   setlocal disableDelayedExpansion
  8.   for %%I in (*.jpg *.bmp *.gif *.png) do (
  9.     set "image=%%~fI"
  10.     setlocal enableDelayedExpansion
  11.     echo !file_start! >>%%~nI.html
  12.     echo !image_start!!image!!image_end! >>%%~nI.html
  13.     echo !file_end! >>%%~nI.html
  14.     endlocal
  15.   )
  16.   endlocal
复制代码


由于图片和html文件都在一个目录中太乱,我就把图片都移至一个“images”的子文件夹中,想要生成路径为 src="images/xxxxx.jpg" 的网页,应该怎么修改?

作者: newswan    时间: 2021-4-30 21:37

本帖最后由 newswan 于 2021-4-30 21:42 编辑

添一句,改一句
  1.     move %%i images\
  2.     set image=src="images\%%~nxi"
复制代码

作者: baibat    时间: 2021-4-30 22:03

回复 2# newswan

我是已经把图片都手动移到images文件夹中了,您是说还要再执行一次 move %%i images\  ?

    没弄成功,本人太菜了 没弄明白,不知道怎么改,麻烦您把完整代码贴一下  ?
作者: cutebe    时间: 2021-4-30 22:10

假设图片已放入images目录中
  1. @echo off
  2. setlocal enableDelayedExpansion
  3. set "file_start=<HTML><HEAD></HEAD><BODY>"
  4. set "image_start=<P align=center><IMG SRC="
  5. set "image_end= class="image"/></P>"
  6. set "file_end=</BODY></HTML>"
  7. for /r images %%i in (*.jpg *.bmp *.gif *.png)do (
  8. (
  9. echo !file_start!
  10. echo !image_start!"images/%%~nxi"!image_end!
  11. echo !file_end!
  12. )>"%%~ni.html"
  13. )
复制代码

作者: baibat    时间: 2021-5-1 08:14

回复 4# cutebe


    谢谢cutebe!问题解决。我就没想起来要变通一下
echo !image_start!"images/%%~nxi"!image_end!




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