我是bash的新手,我还在努力解决一些问题。目前我正在编写一个简单的脚本来从网站(通过wget)获取IP地址值,并将其与我已经存储在机器上的地址进行比较,以检查地址变化。这就是我到目前为止所做的:
#!/bin/bash
currentIp=$(cat /root/ip.log)
if "$currentIp" == $(wget -O - -q -nv --delete-after www.icanhazip.com)
then
echo IP address is unchanged
else
echo IP address has changed
fi
但是,在运行它之后,bash正在用它的值替换变量currentIp
,然后尝试将其作为命令运行(在本例中我用x替换了我的ip地址):
line 3: x.x.x.x: command not found
IP address has changed
答案 0 :(得分:1)
表达式中有一点语法错误。请改用:
if [ "$currentIp" == $(wget -O - -q -nv --delete-after www.icanhazip.com) ] ;