这是一个检测ip变化后,重启docker的脚本
脚本
#! /bin/bash
docker_restart='./docker_restart.sh'
ipFile='./pre.ip'
currentIp=$(curl ip.sb -s)
echo "currentIp: "$currentIp
if [ -z "$currentIp" ];then
exit 0
fi
if [ ! -f "$ipFile" ];then
echo "ip文件不存在"
echo $currentIp > $ipFile
$docker_restart "无" $currentIp
else
echo "ip文件已存在"
preIp=$(cat $ipFile)
echo "preIp: "$preIp
if [ "$currentIp"x = "$preIp"x ];then
echo "ip相同"
else
echo "ip不同,重启docker"
echo $currentIp > $ipFile
$docker_restart $preId $currentIp
fi
fi
知识点
- 变量赋值,获取方法返回值
- 直接赋值
- 获取函数的返回值
- 变量比较
- 字符串比较
- 字符串判空
- 文件操作
- 写文件:echo
- 读文件:cat
- 执行其他的shell脚本
- 根据位置传参
- 根据参数名进行传参
- 给脚本赋予可执行权限:
chmod u+x file