# !/bin/bash
object=$1
tenant=$2
server=$(sshpass -p 'password' ssh -tt root@ipaddress "/opt/something/sh/mysql -A 'admin_site' -e 'select id from something_servers where tenantcode=$2' | grep -o '[0-9]*'")
http -b "http://ipaddress/?app=something&t=users&v=users&server=$server&apikey=apikey&action=something.$1.list"
一切看起来都很好。变量$server的值是“24”,这是它应该的。但是,当我在http请求中调用它时,它仍然不工作......老实说,我没有任何线索。我通过回显它来测试变量的值,它是正确的。但是由于某种原因,当在请求中使用它时,它不工作。
有什么想法吗?
1条答案
按热度按时间ssgvzors1#
您的程式码会建立一个称为object的变数,并将其值设定为储存在称为1的变数中的值。
它创建了一个名为tenant的变量,并将其设置为变量2中存储的值。
然后,它创建一个名为server的变量,然后调用一个subshell并在$()之间运行该例程。
在子程序中:
您可以使用单引号将
但要使变量插值法起作用,则需要使用双引号
也许这就是你的问题?