gpt4 book ai didi

bash - 编写 bash 脚本来读取、比较和验证外部 IP 地址。需要帮忙

转载 作者:行者123 更新时间:2023-11-29 09:49:36 25 4
gpt4 key购买 nike

我是 bash 新手,在编写一个简单的脚本来查看调用脚本的服务器是否是我要执行脚本的服务器时遇到了问题。获取外部 IP 很容易,关于它的其他帖子也很多。不过,我在使用 IF 语句时遇到了问题。

#!/bin/bash
if [ wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//' -ne '174.123.248.82' ] ; then echo "matches"; fi

我做错了什么?我收到一条错误消息:

test_script.sh: line 2: [: missing `]'
sed: -e expression #3, char 4: unknown command: `.'

谢谢!

最佳答案

在您的脚本中,IF 命令在 | 处中断.改成这样

if [ $(wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//') != '174.123.248.82' ] ; then 
echo "matches";
fi

它有两个变化:wget 命令等在 $(..) 中。所以 bash 将执行该命令序列并在那里替换它的输出。然后我将 -ne 替换为 !=,因为输出不是整数。

关于bash - 编写 bash 脚本来读取、比较和验证外部 IP 地址。需要帮忙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2164057/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com