中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何批处理制作这样的网页?[就快解决问题了]
« [1] [2] »
作者:
标题: 如何批处理制作这样的网页?[就快解决问题了] 上一主题 | 下一主题
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『楼 主』:  如何批处理制作这样的网页?[就快解决问题了]

如何批处理制作这样的网页?高手小弟有请了

我想把儿子一直照下来的相做成网页,可是相片N多,一个一个加就是"累“,现想到批处理写网页。(思路:运行P后,查找[./小图片/*.jpg],得到日期就开始制作菜单.....)
要求:把现有的相片做入网页。主页是导航菜单(内容格式是以下)


格式:
拍照日期    拍照日期相片1  拍照日期相片2 拍照日期相片3 拍照日期相片4 ........

例子:
1月1日      拍照日期相片1  拍照日期相片2 拍照日期相片3 拍照日期相片4 ........
1月2日      拍照日期相片1  拍照日期相片2 拍照日期相片3 拍照日期相片4 ........
......

要求:
菜单的拍照日期相片是小图片(./小图片/拍照日期相片1.jpg),i小图片有链接到拍照日期相片原图片(./原图片/拍照日期相片1.jpg)

第二就是原图片的页面了?
可以直接是一张图片的页面,但页面名是要主菜单可以批加入到网页链接的。

[ Last edited by sea1112 on 2008-10-5 at 13:07 ]

2008-10-2 17:09
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『第 2 楼』:  

还有要P下把原图做成指定大小的小图片的也写出来学习学习


文件有

小图片                     原图片
a1 a2 a3 a4              a1 a2 a3 a4

[ Last edited by sea1112 on 2008-10-2 at 17:16 ]

2008-10-2 17:13
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
wdmzjhk
初级用户





积分 61
发帖 28
注册 2008-3-1
状态 离线
『第 3 楼』:  

for /r %%i in (*jpg) do start %%i


把以上代码复制保存到你 有图片的那个盘里面,后缀名为bat。应该就可以了,我 也是才学的。

2008-10-2 17:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 4 楼』:  

@echo off
for /f "tokens=1,4 skip=3" %%a in ('dir /a-d *.jpg') do (
echo ^<a href=%%b^>%%a^</a^> >>show.htm
)
由于不太理解这个过程,只好这样发过来了...

2008-10-2 23:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『第 5 楼』:  

日期 <a href="原相片.jpg"><img src="小图片.jpg" width="60" height="80" border="0"></a>

1。查找文件夹内从1月14日至今天的相片
2。生成第一行第一列,日期(如:1月14日)
3。查找文件夹内图片拍摄日期为1月14日第一张图片,找到后打原相片制作成60*80的小图片放到小图片文件夹中,改名与原相片名一样。
4。生成第一行第二列中加入小图片与链接到原图片。
5。继续查找日期为1月14日是否还有相片,如果有就加入到日期行的第三列中,一直查找到没日期为1月14日相片停。
6。接下去就是日期+1天了,工作是上边一样的。

做成的网页就是这样的。


[ Last edited by sea1112 on 2008-10-3 at 01:48 ]

2008-10-3 01:29
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 6 楼』:  

感谢楼主给了这个锻炼自己的机会,将本p处理放在图片文件夹下,运行后会产生show.htm,有个问题就是产生一个不存在的图片链接,我不会改呵呵...祝你的小宝宝健康成长...
用js会简单得很...一个for循环...

@echo off &setlocal enabledelayedexpansion
if exist show.htm del show.htm
::楼主自己更改下面照片的起始时间XXXX-XX-XX格式
set "pre=2008-09-10"
for /f "tokens=1,4 skip=3" %%a in ('dir /a-d *.jpg') do (
if /I "%%a" GEQ "2008-09-10" (
if  not "!pre!" == "%%a" (
>>show.htm echo ^<br^>
>>show.htm echo ^<hr^>
>>show.htm echo %%a
>>show.htm echo ^<hr^>
echo  "!pre!" "%%a"
set "pre=%%a"
)
echo ^<a href=%%b ^>^<img src=%%b alt=%%a width=80 height=60 border=0^>^</img^>^</a^> >>show.htm
)
)
start show.htm

2008-10-3 15:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 7 楼』:  

忘了,skip改成4
for /f "tokens=1,4 skip=4" %%a in ('dir /a-d *.jpg') do (

2008-10-3 15:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『第 8 楼』:  

出来的不是我图片的东西   

不行,高人出来啊

[ Last edited by sea1112 on 2008-10-3 at 18:15 ]

2008-10-3 18:10
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 9 楼』:  



  Quote:
Originally posted by sea1112 at 2008-10-3 06:10 PM:
出来的不是我图片的东西   :(

那还是什么样子?

2008-10-3 18:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 10 楼』:  

鄙视我?

2008-10-3 18:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 11 楼』:  

认输,实在改不来
>>show.htm echo ^<br^>
>>show.htm echo ^<hr^>
>>show.htm echo %%a帮楼主问一下,谁能帮忙把这里的时间格式改成XXXX年XX月XX日的形式...感激&&学习
>>show.htm echo ^<hr^>

2008-10-3 19:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 12 楼』:  

批处理是做不出这样的效果的,但可以用一个变通的办法,运行以下批处理你将会得
到一份按修改时间排列的照片文件列表:
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /s /a-d /b *.jpg') do (
    set "str=%%~ti"
    call,set "_!str:~,-6!=%%_!str:~,-6!%% %%~ni"
)
for /f "tokens=1,2 delims==_" %%i in ('set _')do echo %%i:%%j
pause>nul




批处理之家新域名:www.bathome.net
2008-10-3 19:35
查看资料  发送邮件  发短消息 网志  OICQ (841615149)  编辑帖子  回复  引用回复
hackate
中级用户





积分 228
发帖 125
注册 2008-8-25
状态 离线
『第 13 楼』:  

@echo off
setlocal enabledelayedexpansion
set "str=2008-08-06"
set str=!str:-=!
set nian=!str:~0,4!年
set yue=!str:~4,2!月
set ri=!str:~-2!日
echo %nian%%yue%%ri%
pause

这个看来不是很好,呵呵,

2008-10-3 19:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
shqf
初级用户





积分 35
发帖 18
注册 2008-8-10
状态 离线
『第 14 楼』:  

由于width、 height可指定显示图片的大小,所以无需小图片,可直接用大图片。本地测试通过。基本符合楼主的要求了。假设相片都在e:\photo目录里,系统格式须是xxxx-xx-xx这样。如不是,可略加修改。
@echo off&setlocal enabledelayedexpansion
set "destfolder=e:\photo"
>show.htm echo ^<table^>
for /f "skip=1 tokens=*" %%i in ('dir /a-d/tw/od "%destfolder%\*.jpg"^|findstr /b "[0-9] ..:"') do (
  for /f "tokens=1,3* delims= " %%a in ("%%i") do (
    if not "%%a"=="!str!"  (
      if defined str >>show.htm echo ^</td^>^</tr^>
      set str=%%a
      >>show.htm echo ^<tr^>^<td^>!str:~5,2!月!str:~-2!日^</td^>^<td^>
)
      >>show.htm echo ^<a href="%destfolder%\%%c" target=_blank^>^<img border=0 width=60 height=80 src="%destfolder%\%%c"^>^</a^>
))
>>show.htm echo ^</table^>
echo OK...
pause>nul
[ Last edited by shqf on 2008-10-4 at 15:01 ]

2008-10-4 10:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sea1112
初级用户





积分 131
发帖 119
注册 2007-6-12
来自 gz
状态 离线
『第 15 楼』:  

我要小图啊,不然菜单打开就要N秒才出来的。可以搞定吗

2008-10-5 12:17
查看资料  发送邮件  发短消息 网志  OICQ (24278528)  编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: