.bash_profileでttyを動作させる方法

.bash_profileでttyを動作させる方法

~/.bash_profileGPGがよりうまく機能するようにするために、次の準備をしました。

export GPG_TTY="`tty`"

ただし、新しいシェルを開くと、次の結果が表示されます。

$ echo $GPG_TTY
not a tty

しかし、再試行するとsource ~/.bash_profile動作します/dev/pts/2

シェルが開いたときに自動的に動作させる方法はありますか? ttyが割り当てられる前にファイルの初期インポートが実行されますか?それでは、後で行う方法はありますか?

答え1

環境GPG_TTY変数は、現在の対話型シェルのTTYデバイスへのパスを保持する必要があります。したがって、設定ファイルを解析するログインシェルが実際にはインタラクティブではない可能性があるため、~/.bashrcファイルの代わりにファイルに配置するのが最も合理的です。~/.bash_profile

GPG_TTYしたがって、設定を削除し、~/.bash_profile次のように追加します。

export GPG_TTY="$( tty )"

あなたのファイルに~/.bashrc

通常、対話型シェルのセッションごとの設定~/.bashrcと非セッション~/.bash_profileファイル固有の設定を追加します。

関連情報