标题: [文本处理] 【已解决】批处理怎样将子文件夹里的图片生成网页链接? [打印本页]
作者: beeboo 时间: 2017-2-24 22:49 标题: 【已解决】批处理怎样将子文件夹里的图片生成网页链接?
新人提问
对存放着一些图片的文件夹使用复制代码
可以得到内容为
=======================
001.jpg
002.png
003.bmp
004.gif
……
=======================
这样的txt文件
如果我想得到内容为
============================================================
<style type="text/css">
<!--
.style7 {font-size: 50px}
body,td,th {
color: #FF0000;
}
body {
background-color: #000000;
}
-->
</style>
<p align="center"><strong>
<img src="001.jpg" border="0"><BR>001.jpg<BR><BR>
<img src="002.png" border="0"><BR>002.png<BR><BR>
<img src="003.bmp" border="0"><BR>003.bmp<BR><BR>
<img src="004.gif" border="0"><BR>004.gif<BR><BR>
……
</strong></p>
============================================================
(都是一些关于html的文本)的txt文件,也就是希望在生成的txt文件中加入指定的文本,
应该是用怎样的代码呢?能否只用一个 .bat 文件搞定呢?
作者: hlzj88 时间: 2017-2-25 10:26
你这个标题应该改为 将子文件夹里的图片生成网页链接
刚注册,好好学。- @echo off
- del indexHY图.html>nul 2>nul
- cls
- echo 正在生成链接
- for /f "delims=" %%a in ('dir/b/on/ad') do (
- set /a p=0
- echo 正在生成%%a的图片链接
- echo.
- cd "%%a"
- del *.html>nul 2>nul
- echo ^<center^>^<h1^>%%a^<br^>生成时间 %date% %time%^</h1^>^</center^>>%%a.html
- echo ^<style type="text/css"^>^<!--.style7 {font-size: 50px} body,td,th {color: #FF0000;} body {background-color: #000000;}--^>^</style^>^<p align="center"^>^<strong^>>>%%a.html
-
- for /f "delims=" %%i in ('dir/b/on/a-d *.jp*g 2^>nul') do echo ^<img src="%%i" border="0"^>^<BR^>%%i^<BR^>^<BR^>>>%%a.html
- echo ^</strong^>^</p^>>>%%a.html
- cd..)
- echo 正在生成总链接 indexHY.html
- echo ^<b^>展示当前第一子文件夹层内的图片-生成时间 %date% %time%^</b^>^<hr^>>index.txt
- for /f "delims=" %%b in ('dir/b/s/on/a-d *.html 2^>nul') do echo ^<a href="%%~fb" target^=^"^_blank^"^>%%~nb^</a^>^</br^>>>index.txt
- ren index.txt indexHY图.html
- exit
复制代码
对所有子文件夹里的 jpg jpeg 图片生成链接网页
作者: 回家路上 时间: 2017-2-25 12:53
不知道你哪儿不会了- @echo off
- for /f "delims=" %%i in ('more +10 "%~f0"') do (
- if "%%i"=="{#IMG#}" (
- for /f "delims=" %%j in ('dir /b *.jpg') do (
- echo;^<img src="%%j" border="0"^>^<BR^>%%j^<BR^>^<BR^>
- )
- ) else echo;%%i
- )
- pause & exit /b
-
- <style type="text/css">
- <!--
- .style7 {font-size: 50px}
- body,td,th {
- color: #FF0000;
- }
- body {
- background-color: #000000;
- }
- -->
- </style>
- <p align="center"><strong>
- {#IMG#}
- ......
- </strong></p>
复制代码
作者: beeboo 时间: 2017-2-25 13:19
回复 3# 回家路上
感谢大佬细致有效的回复,运行了一次,在弹出的界面的确是我十分需要的代码的样子!
不过最后应该怎么输出到txt文件?
或者怎么直接用浏览器运行出现的html代码?
作者: beeboo 时间: 2017-2-25 13:22
回复 2# hlzj88
感谢您细致耐心的回复,我尝试运行了您提供的代码,的确能够生成一个html文件
问题在于,用txt查看html发现里面没有html的代码,我感到比较困惑
作者: 回家路上 时间: 2017-2-25 13:27
看来是哪儿都不会- (for ...
- if ... (
-
- )
- ))>结果.txt
复制代码
作者: Batcher 时间: 2017-2-25 13:33
回复 4# beeboo 复制代码
这样可以用浏览器打开
作者: beeboo 时间: 2017-2-25 14:08
回复 7# Batcher
我相信这是一个富有建设性的提议,方才参考了标准教程尝试了许多次,感觉自己是只无头苍蝇了
希望管理员大人能再指路一把,应该把这段 start 的代码插在 3# 的代码下方何处才能成功呢?
作者: Batcher 时间: 2017-2-25 16:07
回复 8# beeboo - @echo off
- (for /f "delims=" %%i in ('more +11 "%~f0"') do (
- if "%%i"=="{#IMG#}" (
- for /f "delims=" %%j in ('dir /b *.jpg') do (
- echo;^<img src="%%j" border="0"^>^<BR^>%%j^<BR^>^<BR^>
- )
- ) else echo;%%i
- ))>1.htm
- start 1.htm
- goto :eof
-
- <style type="text/css">
- <!--
- .style7 {font-size: 50px}
- body,td,th {
- color: #FF0000;
- }
- body {
- background-color: #000000;
- }
- -->
- </style>
- <p align="center"><strong>
- {#IMG#}
- ......
- </strong></p>
复制代码
作者: hlzj88 时间: 2017-2-25 16:08
回复 5# beeboo
假设你有很多子文件夹,我这个p是把每个文件夹下的图链接后生成HTML在文件夹里,外面的HTML是链接子文件夹里所有的HTML用的,你点击链接,会新窗口打开图片网页。不必到文件夹里去找html。
我的系统win7,测试成功。
作者: beeboo 时间: 2017-2-25 16:12
回复 9# Batcher
太感谢了! 完全没想到是加在中间的! 感谢!
而且这段代码能节约 阅览很多图片的人 很多的时间,效率提高很多啊
(ps:如果有后来有类似需要的新人需要这段代码,请把第四行的 *.je*g 改成 *.* .
结贴了
感谢这个论坛
一来就解决了对我来说老大难的问题
作者: beeboo 时间: 2017-2-25 16:18
回复 10# hlzj88
p的妙用我已经体会到了一些,我方才按自己的习惯测试了您的这个p,可能是因为与您的习惯不同,导致出现了差错
当然最主要的原因还是在于我的水平是没入门的菜鸟,看不懂您的代码导致的
真心希望能赶快提高姿势水平呐
作者: beeboo 时间: 2017-2-26 19:45
回复 9# Batcher
不好意思 再度打扰
试用此段代码一段时间,方方面面都感到满意
但还是希望改进一点:就是令生成的htm文件的前缀名是当前文件夹的名字(并非当前路径)?
于是生成了 [当前文件夹的名字].htm
作者: Batcher 时间: 2017-2-26 20:54
回复 13# beeboo - @echo off
- for %%i in ("%~dp0.") do (
- set "FolderName=%%~nxi"
- )
-
- (for /f "delims=" %%i in ('more +15 "%~f0"') do (
- if "%%i"=="{#IMG#}" (
- for /f "delims=" %%j in ('dir /b *.jpg') do (
- echo;^<img src="%%j" border="0"^>^<BR^>%%j^<BR^>^<BR^>
- )
- ) else echo;%%i
- ))>"%FolderName%.htm"
- start "" "%FolderName%.htm"
- goto :eof
-
- <style type="text/css">
- <!--
- .style7 {font-size: 50px}
- body,td,th {
- color: #FF0000;
- }
- body {
- background-color: #000000;
- }
- -->
- </style>
- <p align="center"><strong>
- {#IMG#}
- ......
- </strong></p>
复制代码
作者: lzm313 时间: 2017-2-27 16:08
终于找到了,认真学习
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |