~/.bash_profile
为了让 GPG 更好地工作, 我做了以下准备:
export GPG_TTY="`tty`"
但是当我打开一个新的 shell 时,我得到以下信息:
$ echo $GPG_TTY
not a tty
但是,如果我再次source ~/.bash_profile
它就会工作并包含类似/dev/pts/2
.
有没有办法让 shell 打开时自动工作?是否最初获取该文件是在分配 tty 之前完成的,如果是这样,是否有办法稍后执行?
答案1
环境GPG_TTY
变量应保存当前交互式 shell 的 TTY 设备的路径。因此,将其放在一个~/.bashrc
文件中而不是放在~/.bash_profile
文件中是最有意义的,因为登录 shell(解析配置文件)实际上在某些情况下可能不是交互式的。
GPG_TTY
因此,删除from的设置~/.bash_profile
并将其添加为
export GPG_TTY="$( tty )"
在你的~/.bashrc
文件中。
一般来说,添加交互式 shell 的会话特定设置~/.bashrc
以及非会话特定于~/.bash_profile
文件的设置。