免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1839 | 回复: 6
打印 上一主题 下一主题

求助,谁来帮我看看这个问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-12-23 15:08 |只看该作者 |倒序浏览
  1. gethtml()
  2. {
  3. #telnet到ip地址的80端口,然后get [url]http://www.sohu.com[/url]网页。并保存到1.html,2.html....
  4.         local ip=$1
  5.         fname=$2
  6.         (
  7.         sleep 1
  8.         echo get [url]http://www.sohu.com[/url]
  9.         echo "\n"
  10.         sleep 8 ) | telnet $ip 80 >"$fname.html" 2>/dev/null
  11.         sed -i '1,3d' "$fname.html"       
  12. }
  13. n=1
  14. #从ip.txt文件里获得IP地址。赋值到ipaddr数组里。
  15. while ((n<=$(cat ip.txt|wc -l)))
  16. do
  17.         ipaddr[$n]=$(cat ip.txt|sed -n "${n}p"|awk '{print $2}')
  18.         ((n+=1))
  19. done
  20. n=`expr $n - 1`
  21. #输出获得主机数目
  22. echo "Test host NO:$n"

  23. loop0=1

  24. while [ $loop0 -le $n ]
  25. do
  26.         gethtml ${ipaddr[$loop0]} "$loop0"
  27.         ((loop0+=1))
  28. done
复制代码


会得到1-8个.html文件。。可是为什么第7个文件会是空文件。?试了好多次的结果都是一样。

[ 本帖最后由 jlu204 于 2007-12-24 08:53 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2007-12-24 09:40 |只看该作者
自己顶一下。。为什么没人理呢?难道我没说明白问题?

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
3 [报告]
发表于 2007-12-24 09:55 |只看该作者
是不是文件7在限定的时间里没有完全传过来?

论坛徽章:
0
4 [报告]
发表于 2007-12-24 15:37 |只看该作者
get http://www.sohu.com

不是。。感觉好像是这句没有执行。

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
5 [报告]
发表于 2007-12-24 21:57 |只看该作者
建议楼主用wget 改写你的脚本,可能只需要两三行命令就可以实现你要的功能。

论坛徽章:
0
6 [报告]
发表于 2007-12-25 17:15 |只看该作者
原帖由 rdcwayx 于 2007-12-24 21:57 发表
建议楼主用wget 改写你的脚本,可能只需要两三行命令就可以实现你要的功能。


以前用wget写过一个。可是从sohu的IP获得网页,需要修改hosts文件。但是系统每次查询hosts文件时会有一段时间间隔,不能立刻读取更新后hosts文件里的ip地址。所以要sleep一段时间才能从hosts的文件中更新新的ip地址获取网页。。这样做效率比较慢。。

所以想用现在的telnet方法,但是执行多次循环时会获得一个空文件。我感觉好像是get http://www.shou.com这句没有被执行。

[ 本帖最后由 jlu204 于 2007-12-25 17:17 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2007-12-26 22:14 |只看该作者
再给自己顶起来。。快来人帮忙啊。。~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP