bash 单引号 动态参数

有一段这样的命令 是可以正常执行的。

sudo salt 'jenkins*' state.apply demoupload pillar='{"abc: "123"}'

因为123 可能为参数,所以设了一个变量

$p=123
 sudo salt 'jenkins*' state.apply demoupload pillar='{"abc: "$p"}'

这样就跑不通了,原因应该是单引号里面的参数是无效的,但是就是不知道应该怎么写才好。请高人指点

http://www.cnblogs.com/fhefh/archive/2011/04/21/2024198.html