让机器自动给自己发个上网的IP
发表于 : 2018-02-11 13:14
上网用的动态IP又没用花生壳的话,可以让机器取得IP发给自己。
先造个ip/oldip,写几个字0.0.0.0
#!/bin/bash
des_mail=too@too.com
newip=1.1.1.1
if [ -d ~/ip ]; then
cd ~/ip
newip=`curl members.3322.org/dyndns/getip -s`
for line in `cat oldip`
do
echo $line > /dev/null
done
if [ "$line" != "$newip" ];then
echo $newip > oldip
echo $newip | mail -s "IP" $des_mail
fi
fi
exit 0
也可以用 wget members.3322.org/dyndns/getip -q
(wget默认写进文件,curl不加参数直接输出结果)
生成包含IP的getip,第二次就是getip.1,依次增加。
思路就是比较俩文件,一致就什么也不做,删除getip.1;
不一致就是ip换了,把getip.1复制到getip,然后删除 getip.1,发邮件给自己.
#!/bin/bash
des_mail=too@too.com
if [ -d ~/ip ]; then
cd ~/ip
wget members.3322.org/dyndns/getip -q
diff getip getip.1 > getipdiff
if [ -s getipdiff ]; then
cp getip.1 getip
for line in `cat getip`
do
echo $line > /dev/null
done
echo $line | mail -s "IP" $des_mail
fi
rm getip.1
rm getipdiff
fi
exit 0
先造个ip/oldip,写几个字0.0.0.0
#!/bin/bash
des_mail=too@too.com
newip=1.1.1.1
if [ -d ~/ip ]; then
cd ~/ip
newip=`curl members.3322.org/dyndns/getip -s`
for line in `cat oldip`
do
echo $line > /dev/null
done
if [ "$line" != "$newip" ];then
echo $newip > oldip
echo $newip | mail -s "IP" $des_mail
fi
fi
exit 0
也可以用 wget members.3322.org/dyndns/getip -q
(wget默认写进文件,curl不加参数直接输出结果)
生成包含IP的getip,第二次就是getip.1,依次增加。
思路就是比较俩文件,一致就什么也不做,删除getip.1;
不一致就是ip换了,把getip.1复制到getip,然后删除 getip.1,发邮件给自己.
#!/bin/bash
des_mail=too@too.com
if [ -d ~/ip ]; then
cd ~/ip
wget members.3322.org/dyndns/getip -q
diff getip getip.1 > getipdiff
if [ -s getipdiff ]; then
cp getip.1 getip
for line in `cat getip`
do
echo $line > /dev/null
done
echo $line | mail -s "IP" $des_mail
fi
rm getip.1
rm getipdiff
fi
exit 0