如题,原脚本中判断的是传入的第一个参数$1
,这里我改成了IPA
,然后动态赋值,输出的 IPA 值也确实为 v6 ,但是判断为 v4 。请大家帮忙看看是哪里出错了
#!/bin/sh
IPA=`curl 'https://api64.ipify.org?format=json' | jq -r .ip`
echo $IPA
if [ "$IPA" != "${1#*:[0-9a-fA-F]}" ]; then
echo IPv6
elif [ "$IPA" != "${1#*[0-9].[0-9]}" ]; then
echo IPv4
else
echo "Unrecognized IP format '$1'"
fi
执行后的输出:
root@testbench:/home/testbench/userdata# ./ipv6.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 47 100 47 0 0 48 0 --:--:-- --:--:-- --:--:-- 47
2409:8a66:b53:c761:c3be:b1b3:69d7:fb01
IPv4
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.