2017-08-17 5 views
1

シェルスクリプト1を持っています1.sh。私は別のシェルスクリプト2.shを持っています。ここでは、最初のスクリプトの機能を使用し、2番目のスクリプトで使用する変数に格納する必要があります。これらの別のスクリプトから1つのシェルスクリプトを呼び出し、そのスクリプトの出力を変数に格納します。

いずれも動作するようには思えません:

a=$(sh 1.sh) 
a=sh 1.sh 
a=`sh 1.sh` 
+0

最初と3番目が正しいです。問題を示す[mcve]を投稿してください。 –

+0

'1.sh'が使いたい機能を持っている場合、' 1.sh'のコードを 'source 1.sh'に含めて、その関数を呼び出します。あなたのコードは '1.sh'スクリプトの出力をvarに代入しようとしますので、' 2.sh'で '1.sh'をどのように使いたいか説明してください。 –

答えて

0

最初のソリューションが正しいこと、例えば試してみてください。

echo 'echo "hello, world"' > echohello.sh 
hello=$(sh echohello.sh) 
echo $hello 

はたぶん、あなたは1.shでエラーを持っているか、それが別のディレクトリにありますか? ./1.shを実行して直接呼び出すことはできますか?

関連する問題