如以下的一段shell脚本:
#!/bin/sh
time=0
mac=`ifconfig eth0|sed -n '1p'|awk '{printf $5}'`
echo '(mac-0-8)='${mac:0:8}
while [ ${mac:0:8} != "00:D0:D0" ]
do
#echo "No"
sleep 1
((time=$time+1))
mac=`ifconfig eth0|sed -n '1p'|awk '{printf $5}'`
echo After $time S,the mac is $mac
done
echo "Yes,Go"
echo "OK!!!!"
主要功能:判断本机mac地址是否是00:D0:D0开头
shell脚本需要注意点:
1)将命令的结果放到变量中,需要注意使用Esc键下面的反引号`,将整条命令引出,而不是单引号
2)数值计算可用双括号括起来,否则会当作字符串运算
3)while循环的条件使用的 方括号前后需要有一个空格
4)while循环的条件使用的 不等于号前后需要有一个空格,否则会当作字符连接。
nnd,真是搞死了。搞了两三个小时。彻底晕菜!
#!/bin/sh
time=0
mac=`ifconfig eth0|sed -n '1p'|awk '{printf $5}'`
echo '(mac-0-8)='${mac:0:8}
while [ ${mac:0:8} != "00:D0:D0" ]
do
#echo "No"
sleep 1
((time=$time+1))
mac=`ifconfig eth0|sed -n '1p'|awk '{printf $5}'`
echo After $time S,the mac is $mac
done
echo "Yes,Go"
echo "OK!!!!"
主要功能:判断本机mac地址是否是00:D0:D0开头
shell脚本需要注意点:
1)将命令的结果放到变量中,需要注意使用Esc键下面的反引号`,将整条命令引出,而不是单引号
2)数值计算可用双括号括起来,否则会当作字符串运算
3)while循环的条件使用的 方括号前后需要有一个空格
4)while循环的条件使用的 不等于号前后需要有一个空格,否则会当作字符连接。
nnd,真是搞死了。搞了两三个小时。彻底晕菜!