1
シェルスクリプト1を持っています1.sh
。私は別のシェルスクリプト2.sh
を持っています。ここでは、最初のスクリプトの機能を使用し、2番目のスクリプトで使用する変数に格納する必要があります。これらの別のスクリプトから1つのシェルスクリプトを呼び出し、そのスクリプトの出力を変数に格納します。
いずれも動作するようには思えません:
a=$(sh 1.sh)
a=sh 1.sh
a=`sh 1.sh`
シェルスクリプト1を持っています1.sh
。私は別のシェルスクリプト2.sh
を持っています。ここでは、最初のスクリプトの機能を使用し、2番目のスクリプトで使用する変数に格納する必要があります。これらの別のスクリプトから1つのシェルスクリプトを呼び出し、そのスクリプトの出力を変数に格納します。
いずれも動作するようには思えません:
a=$(sh 1.sh)
a=sh 1.sh
a=`sh 1.sh`
最初のソリューションが正しいこと、例えば試してみてください。
echo 'echo "hello, world"' > echohello.sh
hello=$(sh echohello.sh)
echo $hello
はたぶん、あなたは1.sh
でエラーを持っているか、それが別のディレクトリにありますか? ./1.sh
を実行して直接呼び出すことはできますか?
最初と3番目が正しいです。問題を示す[mcve]を投稿してください。 –
'1.sh'が使いたい機能を持っている場合、' 1.sh'のコードを 'source 1.sh'に含めて、その関数を呼び出します。あなたのコードは '1.sh'スクリプトの出力をvarに代入しようとしますので、' 2.sh'で '1.sh'をどのように使いたいか説明してください。 –