Chinaunix

标题: shell脚本的while循环 [打印本页]

作者: wingjang    时间: 2007-10-31 16:50
标题: shell脚本的while循环
源代码:
#!/bin/sh
DIR="/jing/"
IP="127.0.0.1"
while read ADDRESS  
do   
wget -t 3 "http://""${ADDRESS}""${DIR}""20071025.txt"
done < "/var/www/html/jing/ip_list.txt"

提示错误:
': not a valid identifierta.sh: line 4: read: `

请问是什么原因?
作者: MMMIX    时间: 2007-10-31 18:57
脚本是原封不动的拷贝上来的?

BTW,把要执行的命令 echo 出来看看,也可以考虑用 set -x。
作者: wingjang    时间: 2007-10-31 20:52
是原封不动。执行的是 : sh -f /var/www/html/jing/test.sh.

如果不用while,而是:
read ADDRESS     
wget -t 3 "http://""${ADDRESS}""${DIR}""20071025.txt"
这样就可以。

why?
作者: finddream    时间: 2007-10-31 21:13
#dos2unix /var/www/html/jing/test.sh
#bash /var/www/html/jing/test.sh
作者: wingjang    时间: 2007-11-01 15:19
按照4楼的做了,现在不报错了,但是似乎没有执行。现在文件内容为:
#!/bin/sh
while read ADDRESS
do
echo "${ADDRESS}"
wget -t 3 "http://${ADDRESS}/log/epg.log.txt"
done < "/var/www/html/jing/ip_list.txt"

执行完没有任何提示,内容没有echo出来,文件也没下载下来。
"/var/www/html/jing/ip_list.txt"里面明明有一个ip,是在windows下面编辑的。会不会是这个原因造成数据读不出来?
作者: wingjang    时间: 2007-11-01 15:51
可以了,我把"/var/www/html/jing/ip_list.txt"也转换成了unix格式的。
谢谢4楼啊
作者: MMMIX    时间: 2007-11-01 20:12
标题: 回复 #6 wingjang 的帖子





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2