![如何将环境变量设置为路径,以便可以从同一程序的 GUI 和命令行读取它?](https://linux22.com/image/133293/%E5%A6%82%E4%BD%95%E5%B0%86%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E8%AE%BE%E7%BD%AE%E4%B8%BA%E8%B7%AF%E5%BE%84%EF%BC%8C%E4%BB%A5%E4%BE%BF%E5%8F%AF%E4%BB%A5%E4%BB%8E%E5%90%8C%E4%B8%80%E7%A8%8B%E5%BA%8F%E7%9A%84%20GUI%20%E5%92%8C%E5%91%BD%E4%BB%A4%E8%A1%8C%E8%AF%BB%E5%8F%96%E5%AE%83%EF%BC%9F.png)
我安装了 texlive,我想将其作为环境变量添加到我的 Path 中,以便当我从 GUI 或命令行启动 emacs 时,Emacs AucTeX 可以读取它。到目前为止,我读到 emacs 只从 ~/.profile 读取文件
因此,我的计划是将 texlive 添加到 .profile 中的路径中,以使 emacs GUI 能够读取它,然后从 .bashrc 中获取 ~/profile ,以便在我的非登录交互式 Gnome 终端中启动的 emacs 看到该路径。
注意:我的主目录中没有 .profile 文件。仅在我的 etc 目录中,我不想碰那个目录,但我的主目录中有一个 .bash_profile 。但是我读到 .bash_profile 仅针对交互式登录会话运行控制台模式我不使用它。
我的计划是在我的主目录中创建一个 .profile 文件并执行以下操作:
步骤1:创建~/.profile
步骤2:将texlive环境变量添加到.profile中的路径
export PATH=/usr/local/texlive/2018/bin/x86_64-linux:$PATH
export MANPATH=/usr/local/texlive/2018/texmf-dist/doc/man:$MANPATH
export INFOPATH=/usr/local/texlive/2018/texmf-dist/doc/info:$INFOPATH
步骤 3:从 .bashrc 获取 .profile
#Adding this at the bottom or start of .bashrc to source .profile when the terminal is opened.
if [-s ~/.profile]; then;
source ~/.profile;
fi
我知道,由于存在导致无限循环的风险,人们对从 .bashrc 获取 .profile 存在很多担忧。但是,由于我从头开始创建 .profile 文件,这不会成为问题,因为它不会包含任何引用 .bashrc 的代码。
我的问题:
- 你觉得我的计划怎么样?
- 你认为这会起作用吗?
- 您对如何改进它或其他替代方案有什么建议吗
附加信息:我的 .bashrc 只包含源代码~/etc/bashrc
和一个由 Anaconda 自动添加的环境变量:export PATH="/home/Fedora_User/Anaconda3/bin:$PATH"
请记住,我知道 gnome-terminal 可以作为交互式登录 shell 运行,但我从未这样做过,也不知道它是否会影响我的终端会话的性能。