コマンドラインからシェル変数をエクスポートする

コマンドラインからシェル変数をエクスポートする

私は次のスクリプトを使って二重性ゲームをしています。

export PASSPHRASE=SomeLongGeneratedHardToCrackKey
duplicity /etc scp://[email protected]/etc
unset PASSPHRASE

これはUbuntuドキュメントリンク

スクリプトで設定するのではなく、コマンドラインでパスワードを設定するにはどうすればよいですか?

私は(コマンドラインを介して)次のことを試しました。

PASSPHRASE='SomeLongGeneratedHardToCrackKey'

export -n PASSPHRASE

しかし、これはうまくいきません。 Duplicityはまだgpgキーのパスワードを入力するように求められます。

アイデア?ティア、

オレ

ベストアンサー1

シェルは、スクリプトと対話型のコマンドラインセッションが同じように見えるように設計されています。これは、次のことを効果的に再入力できることを意味します。

export PASSPHRASE=SomeLongGeneratedHardToCrackKey
duplicity /etc scp://[email protected]/etc
unset PASSPHRASE

特定のコマンドの変数のみをエクスポートするのが一般的なので、次のショートカットがあります。

PASSPHRASE=SomeLongGeneratedHardToCrackKey \
duplicity /etc scp://[email protected]/etc

export -nexport -n説明とは逆に機能しません。exporthelp export

 ...
  -n    remove the export property from each NAME
 ...

おすすめ記事