2010-09-09 71 views

回答

5

将您的报价更改为单引号。双引号允许变量在尚未设置的当前环境中替换。要看到其中的差别,试试你的版本$USER,并将它与这一个:

su user -c 'ABC=abc; echo $ABC; echo $USER' 
2

如果使用Bourne shell变种:

 
ABC=abc su user -c 'echo $ABC' 

如果没有,使用ENV。

 
env ABC=abc su user -c 'echo $ABC' 
+0

感谢您的回答,它的工作原理,但它不完全是我需要的。对于su命令,我有一个相当长的输入字符串,我必须确定变量的值为“user”。 – 2010-09-09 13:04:03

相关问题