2017-08-28 6 views
0

を定義して取得されていません。Linuxのbashの:-eでのxtermを開くときに、varaiblesは、私は、単純なxtermコマンドをしようとしています

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

私は一度に複数のシェルスクリプトを実行しています。彼らはお互いに重なり合いませんか? –

関連する問題