将cURL输出赋值给Bash中的变量

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (968)

我试图将curl的输出赋值到如下所示的变量:

#!/bin/sh
$IP=`curl automation.whatismyip.com/n09230945.asp`
echo $IP
sed s/IP/$IP/ nsupdate.txt | nsupdate

但是,当我运行脚本时,会发生以下情况:

./update.sh:3:=我的IP地址*未找到

如何才能将输出输入$IP对吗?

提问于
用户回答回答于

在shell中,不会在指定的变量前面放置$,只在引用变量时使用$ip。

#!/bin/bash

IP=$(curl automation.whatismyip.com/n09230945.asp)

echo "$IP"

sed "s/IP/$IP/" nsupdate.txt | nsupdate
用户回答回答于

从实例中获取EC2实例区域。

INSTANCE_REGION=$(curl -s 'http://169.254.169.254/latest/dynamic/instance-identity/document' | python -c "import sys, json; print json.load(sys.stdin)['region']")

echo $INSTANCE_REGION

扫码关注云+社区

领取腾讯云代金券