~/.local/bin/
我的文件夹中安装了一些程序,/etc/profile
其中有以下内容:
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
PATH="~/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:~/.cabal/bin"
fi
export PATH
XFCE4 不尊重此变量,而是将其/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
作为 PATH,因此如果我打开 xfce4-terminal,则无法启动位于 中的程序~/.local/bin/
。如果从 XFCE4 启动,emacs 也会遇到这种情况,因此M-x run-shen
,例如, 不起作用,因为 shen 未在系统范围内安装。
使用时不会出现此问题startx
,因此问题可能出在 XFCE4 的启动方式上。
我这样做了grep -R PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games /etc/
,但什么也没发生/etc/login.def
。
答案1
要使用的正确文件是~/.xsessionrc
。
只需创建该文件并输入:
PATH=~/.local/bin:$PATH:~/.cabal/bin
export PATH
答案2
正确的方法是这样的:
cp /etc/xdg/xfce4/xinitrc ~/.config/xfce4/xinitrc
然后编辑~/.config/xfce4/xinitrc
以放入
export PATH=~/.local/bin:$PATH:~/.cabal/bin
答案3
如果它在 vncserver 下运行,检查PATH
变量是否已在 中设置,否则它将覆盖或.vnc/xstartup
中设置的变量。.profile
/etc/environment