1

我正在尝试制作一个非常小的脚本,但我遇到了一个问题,我想调用一个简单的 bash 脚本,传递一个 IP 地址,如下所示:

./bashScript 192.111.211.211

脚本如下所示:

#!/bin/bash
curl https://www.xxx.com/api_json.html \
  -d 'a=ban' \
  -d 'tkn=xxxxxx' \
  -d 'email=xxx@gmail.com' \
  -d 'key=$1' \

但它不起作用,$1 参数没有发送,我从网络服务收到错误。

我做错了什么?

非常感谢!

4

1 回答 1

3

使用双引号:

-d "key=$1"

单引号防止变量扩展:

~$ foo=bar
~$ echo '$foo'
$foo
~$ echo "$foo"
bar
于 2013-03-16T19:40:21.197 回答