我试图制作一个非常小的脚本,但我遇到了一个问题,我想调用一个简单的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参数没有发送,我从网络服务得到错误。
我做错了什么?
非常感谢!
答案 0 :(得分:3)
使用双打引号:
-d "key=$1"
单引号可防止变量扩展:
~$ foo=bar
~$ echo '$foo'
$foo
~$ echo "$foo"
bar