サブシェルの出力をプロセスにリダイレクトする

サブシェルの出力をプロセスにリダイレクトする

SSHでスクリプトを実行し、いくつかのパラメータをスクリプトに渡そうとします。以下を試しましたが、成功しませんでした。値が渡されませんでした。

$ LC_FOO=x ssh -o SendEnv=LC_FOO $HOST < myLongScript.sh

ターゲットホストは時々非常に制限され、定期的に再生成されるため、SSH設定を変更することは役に立ちません。

だから私はトリックを使ってスクリプト自体の中で値を渡そうとしました。つまり、スクリプトに変数を追加したいのです。

私も別の方法を試しました:

# doesn't work - 'ambiguous redirect'
$ ssh ... < $(...)

# doesn't work - 'LC_FOO=x: command not found'
$ $(echo "FOO=x"; cat myLongScript.sh) | ssh ...

ssh入力の前にその行を追加するにはどうすればよいですか?

ベストアンサー1

あなたは一つが欲しいプロセスの交換たとえばssh ... < <(...)ssh ... < $(my_command)コマンドの置き換えそれぞれのリダイレクトを作成します。言葉my_commandリダイレクトの対象となって発生する結果です。

おすすめ記事