我使用curl命令获取我的IP地址,我想将其保存为shell变量。
我使用以下命令获取IP地址
curl ipinfo.io/ip
我这样分配变量:
IPADDR=`curl ipinfo.io/ip`
但是当我回应这个时,我得到以下内容:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 14 100 14 0 0 41 0 --:--:-- --:--:-- --:--:-- 164
24.18.247.198
我想要的只是24.18.247.198。有什么想法吗?
答案 0 :(得分:3)
curl提供了一个操作“静音”的属性:-s
因此,您可以这样设置变量:
IPADDR=$(curl -s ipinfo.io/ip)
答案 1 :(得分:1)
这样做:
IPADDR=$(curl ipinfo.io/ip 2>/dev/null)
即,“%Total”,“%Received”等在stderr上打印。通过将stderr重定向到/dev/null
,你可以摆脱那种噪音。
尽可能使用$(...)
代替`...`
。