パイプを介して標準出力を「エクスポート」するのと同じ機能をどのように達成できますか?
背景には、次の環境変数を生成する非シェルスクリプトがあります。
DATABASE_URL='someurl'
MAIL_KEY='key'
REDIS_URL='redis connection string'
私はその出力を取得し、次のように実行したいと思います:
generate-env | xargs export
残念ながら、エクスポートはバイナリファイルではなく、評価ファイルでもありません。出力をファイルに書き込み、ソースを使用して実行したくありません。可能ですか?
ベストアンサー1
あなたはそれを使用することができますeval
:
$ set -a
$ eval "$(command_that_generate_output)"
$ set +a
$ sh -c 'printf "%s\n" "$DATABASE_URL"'
someurl