将字符串变量从 bash 脚本传递到根宏

Pass a string variable from bash script to root macro

我在 bash 脚本中定义了一个变量,以便在我用 root 调用我的宏时使用它,例如:

user = name
root 'macro.C('$user')'

执行宏时,我得到:

Processing macro.C(name)...
Error: Symbol name is not defined in current scope  :0:
*** Interpreter error recovered ***

我的宏基本定义为

void macro(char* user[])
{
   //code
}

我认为问题可能出在最后一段代码中。我想要做的就是有一个 string/char 我可以在我的宏中使用。知道怎么做吗?

提前致谢!

Bash 不对单引号 (') 中的字符串执行变量扩展。尝试用双引号 (") 代替:

root "macro.C(\"$user\")"

编辑:对内部字符串进行转义以响应您的评论。