Chinaunix
标题:
while read line循环的问题
[打印本页]
作者:
lthz2000
时间:
2004-03-21 17:24
标题:
while read line循环的问题
我在TMP目录下有很多文件,我想做一个脚本,MORE这些文件,然后拿到相应的参数,写了下面一个脚本
注:LIST是我手工生成的TMP目录下的这些文件列表。
while read line
do
#echo $line; sleep 5
hostname=`echo $line |awk '{ print $1 }'`
interface=`echo $line |awk '{ print $2 }'`
ipadd=`echo $line |awk '{ print $3 }'`
desip=`echo $line |awk '{ print $4 }'`
expect ping.exp $hostname $interface $ipadd desip done< $1
运行后发现处理了第一个文件后就退出了,
不知道哪里出错了,我刚学SHELL,哪位兄弟帮忙看看
作者:
bjgirl
时间:
2004-03-21 17:47
标题:
while read line循环的问题
expect ping.exp $hostname $interface $ipadd desip done< $1
done前面少了分号,desip前面少啦$
作者:
lthz2000
时间:
2004-03-21 17:52
标题:
while read line循环的问题
谢谢BJGIRL,其实我这里
done<$1之前是有换行符的,不知道未什么粘到这里的时候就没有了,
desip前面也有$,我执行此脚本对第一个文件操作是完全没问题的,
就是第一个文件执行完了就退来了,
作者:
bjgirl
时间:
2004-03-21 17:54
标题:
while read line循环的问题
paste ur tmpfile
作者:
lthz2000
时间:
2004-03-21 17:55
标题:
while read line循环的问题
不好意思,是我粘错了,
while read line
do
#echo $line; sleep 5
filename=`echo $line`
#echo "$filename" >> /tmp2/end
hostname=`more $filename |grep "#" | awk '{print $1}' |sed 's/#//'`
interface=`more $filename |grep "#" | awk '{print $2}'`
sourceip=`more $filename |grep "#" | awk '{print $3}'`
desip=`more $filename |grep "#" | awk '{print $4}'`
successrate=`more $filename |grep Success | awk '{print $4}'`
echo "$hostname" "$interface" "$sourceip" "$desip" "$successrate" >>/tmp2/end
done<$1
tmp2目录下的文件结构如下:
Type escape sequence to abort.
Sending 100, 1500-byte ICMP Echos to 10.71.255.30, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Success rate is 100 percent (100/100), round-trip min/avg/max = 12/16/20 ms
HZ-RT7507-02# Serial6/1/3:0 10.71.255.29 10.71.255.30
作者:
bjgirl
时间:
2004-03-21 18:39
标题:
while read line循环的问题
把more换成cat!
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2