2017-08-28 38 views
0

我想要一个简单的xterm命令:的Linux击:用-e打开的xterm时,该varaibles没有得到确定

xterm -hold -e "hare=0;echo $hare" 

它会打开xterm的空白

我观察到什么是可变的野兔在没有得到-e引号内定义

,其中为:

hare=0;xterm -hold -e "echo $hare" 

它打开n xterm显示0

我必须在-e引号中定义变量并执行一些操作。有没有可能。我希望xterm访问外部变量以及-e

回答

0

中定义的变量变量在双引号字符串内展开,因此该变量由原始外壳扩展,而不是由xterm中的外壳扩展。使用单引号。

xterm -hold -e 'hare=0; echo $hare' 

如果分配在原来的壳变量,你需要导出它,所以它会成为多数民众赞成由子进程继承的环境变量:

hare=0 
export hare 
xterm -e 'echo $hare' 
+0

那么问题是外部变量是不无障碍。现在'hare = 0; xterm -hold -e'echo $ hare''显示空白。 –

+0

您需要导出变量以使其成为环境变量。 – Barmar

+0

我将一次运行多个shell脚本。他们不会互相重叠吗? –