如何使用以下命令提取 IP 地址和国家/地区并将它们单独放入一个字符串中,不带任何引号或文本中存在的任何其他字符:
info_ip=`wget --tries=1 --timeout=10 -qO- http://ipinfo.io/?callback=callback; echo`
$ip = ?
$国家= ?
答案1
您可以使用awk
捕获ip
andcountry
并将其保存到数组中:
IFS=$'\n'
IP_country=( $(awk -F'[:"]' '/ip/ || /country/{ print $5}' <<<"$( wget ... )") )
那么第一个元素是ip
,下一个元素是country
:
printf '%s\n' "${IP_country[0]}"
1.2.3.4
printf '%s\n' "${IP_country[1]}"
IR
或者打印所有元素:
printf '%s\n' "${IP_country[@]}"
1.2.3.4
IR
未来阅读: