タイトルが示すように、私は子プロセス(通常はスクリプト)で親プロセス(特にシェル)の環境変数を変更できるようにしたいです。疑似端末のサブスクリプトからエクスポートしようとしているので、エクスポートした/dev/pts/id
変数key=value
を何らかの方法で親スクリプトに渡す必要がありますか(可能であれば)。
エコーはcmd > /proc/$$/fd/0
実行されず、サブシェルで実行するのではなく、シェルターミナルcmd
エミュレータでコマンドを表示するだけで、親プロセスに変数を追加しません。$(cmd)
cmd
export
私はすべての作業が子側で行われることを好みます。
誰かがコメントで私に尋ねました。私が達成したいことは何ですか?これは一般的な質問であり、ユーザーが追加の操作なしで追加された変数の利点を享受できるように、(親)シェルで実行(生成)されたスクリプトに変数を渡すために肯定的な答えを使用しようとしています。たとえば、アプリケーションをインストールするスクリプトが必要な場合は、アプリケーションディレクトリを親シェルパスに追加する必要があります。