楼 主
批处理中如何进行进程通讯?
发表于 2007-02-27 23:38 · 中国 广东 深圳 电信
中级用户
★★
积分 379 发帖 95 注册 2003-07-17 00:00 23年会员 UID 7038 性别 男
状态 离线
@echo off
::生成ip号码
for /l %%i in (1,+1,10) do (
set ip="64.56.172.%%i"
%cd%\wget
http://%ip%
)
现在我的很大问题就是wget的提取有的内容如何做条件判断了?
也就是如何把wget的操作放在变量中,或者如何进行进程通讯?
wget如何找不到页面内容提示:
--10:26:58--
http://64.56.172.1/
=> `index.html'
Connecting to 64.56.172.1:80... failed: Connection refused.
--10:27:04--
http://64.56.172.2/
=> `index.html'
条件就是看有否?failed: Connection refused.
没有错误就是%ip%>>ip.txt
是否要用到两个for命令?我试过不成功,也许是我不什么会用这个for!
还有一个问题就for中的设置变量如何set好像没有循环值,就好像这个%ip%所有值都是同一个?是否要其它命令设置变量?
[
Last edited by peterdocter on 2007-2-27 at 11:45 PM ]
第 2 楼
发表于 2007-02-27 23:50 · 中国 江苏 苏州 联通
银牌会员
★★★
积分 1,181 发帖 533 注册 2006-08-14 12:54 19年会员 UID 60484
状态 离线
第 3 楼
发表于 2007-02-27 23:56 · 中国 甘肃 兰州 电信
金牌会员
★★★★
积分 4,103 发帖 1,744 注册 2006-01-20 13:00 20年会员 UID 49241 性别 男 来自 甘肃.临泽
状态 离线
可以wget -o abc.txt http://
来在abc.txt中 find failed: Connection refused.
第 4 楼
发表于 2007-02-28 00:06 · 中国 广东 深圳 电信
中级用户
★★
积分 379 发帖 95 注册 2003-07-17 00:00 23年会员 UID 7038 性别 男
状态 离线
第 5 楼
发表于 2007-02-28 00:23 · 中国 浙江 温州 电信
中级用户
★★
积分 458 发帖 196 注册 2006-10-05 12:04 19年会员 UID 64614
状态 离线
换curl下载试试
for /l %%i in (1,+1,10) do (
set ip="64.56.172.%%i"
%cd%\curl 地址|find 错误提示||echo %ip%>ip.txt
)
这样行不
第 6 楼
发表于 2007-02-28 00:27 · 中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226 发帖 1,737 注册 2006-03-10 00:38 20年会员 UID 51697 来自 成都
状态 离线
for 语句内部使用前面定义的变量,要么启用变量延迟,要么使用 call 语句。
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
第 7 楼
发表于 2007-02-28 00:30 · 中国 甘肃 兰州 电信
金牌会员
★★★★
积分 4,103 发帖 1,744 注册 2006-01-20 13:00 20年会员 UID 49241 性别 男 来自 甘肃.临泽
状态 离线
Originally posted by peterdocter at 2007-2-28 00:06:
真得没有办法在批处理中把程序放到变量中吗?
去看看 gwet的参数
第 8 楼
发表于 2007-02-28 00:42 · 中国 广东 深圳 电信
中级用户
★★
积分 379 发帖 95 注册 2003-07-17 00:00 23年会员 UID 7038 性别 男
状态 离线
Originally posted by namejm at 2007-2-28 12:27 AM:
for 语句内部使用前面定义的变量,要么启用变量延迟,要么使用 call 语句。
要么启用变量延迟,是什么命令?
如何用call如何转这个变量参数?用%1这样就行了吗?
第 9 楼
发表于 2007-02-28 01:24 · 中国 广东 深圳 电信
中级用户
★★
积分 379 发帖 95 注册 2003-07-17 00:00 23年会员 UID 7038 性别 男
状态 离线
Originally posted by zerocq at 2007-2-28 12:23 AM:
换curl下载试试
for /l %%i in (1,+1,10) do (
set ip="64.56.172.%%i"
%cd%\curl 地址|find 错误提示||echo %ip%>ip.txt
)
这样行不
这样做不管有没有错误都把全部ip生成出来! find没有半点用!
第 10 楼
发表于 2007-03-01 03:42 · 中国 广东 深圳 电信
中级用户
★★
积分 379 发帖 95 注册 2003-07-17 00:00 23年会员 UID 7038 性别 男
状态 离线
set ip=64.56.172
::Generating IP number
for /l %%i in (1,1,20) do (
wget -t3 -O html.txt
http://%ip%.%%i -o %cd%\state.txt | find "connected" && echo
http://%ip%.%%i >>%ip%_http.txt
)
用&&就是不管url是事有效都不生成文件,而换成||反之!
Command1 &&Command2
只有在符号 && 前面的命令成功时,才运行该符号后面的命令。Cmd.exe 运行第一个命令,然后只有在第一个命令运行成功时才运行第二个命令。
Command1 || Command2
只有在符号 || 前面的命令失败时,才运行符号 || 后面的命令。Cmd.exe 运行第一个命令,然后只有在第一个命令未能运行成功(接收到大于零的错误代码)时才运行第二个命令。
到底有什么问题?是问题太难还是太简单一直没有几个人肯回答?
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正