ko-*_*dos 542
设置的路径.bash_profile只会在 bash 登录 shell ( bash -l) 中设置。如果您将路径放入.profile其中,您的完整桌面会话将可以使用它。这意味着即使是 metacity 也会使用它。
例如~/.profile:
if [ -d "$HOME/bin" ] ; then
PATH="$PATH:$HOME/bin"
fi
Run Code Online (Sandbox Code Playgroud)
顺便说一句,您可以通过查看进程中的环境来检查进程的 PATH 变量/proc/[pid]/environ(将 [pid] 替换为 中的数字ps axf)。例如使用grep -z "^PATH" /proc/[pid]/environ
bash作为登录shell不解析.profile如果任一.bash_profile或.bash_login存在。来自man bash:
它按顺序查找 ~/.bash_profile、~/.bash_login 和 ~/.profile,并从第一个存在且可读的命令中读取和执行命令。
有关或交互式非登录 shell 的信息,请参阅下面的答案.pam_environment,或者.bashrc通过将脚本放入/etc/profile.d/或用于/etc/X11/Xsession.d/影响显示管理器会话来为所有用户全局设置值。
Oph*_*ian 385
.bashrc在您的主目录中编辑并添加以下行:
export PATH="/path/to/dir:$PATH"
Run Code Online (Sandbox Code Playgroud)
您将需要获取.bashrc或注销/登录(或重新启动终端)才能使更改生效。要获取您的.bashrc,只需键入
$ source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
ish*_*ish 167
定义适用于所有用户的永久性系统范围环境变量的推荐位置是:
/etc/environment
Run Code Online (Sandbox Code Playgroud)
(这PATH是定义默认值的地方)
这将适用于桌面或控制台、gnome 终端或 TTY、风雨无阻;)
要编辑,请打开终端并键入:
sudoedit /etc/environment
Run Code Online (Sandbox Code Playgroud)
(或使用sudo您喜欢的文本编辑器打开文件)
要使其在不重新启动的情况下工作,请运行. /etc/environment或source /etc/environment。由于此文件只是一个简单的脚本,它将运行并将新路径分配给PATH环境变量。检查运行env并查看PATH列表中的值。
有关的:
wot*_*oto 62
我认为 Ubuntu 中的规范方式是:
在下创建一个新文件 /etc/profile.d/
sudo vi /etc/profile.d/SCRIPT_NAME.sh
Run Code Online (Sandbox Code Playgroud)在那里添加:
export PATH="YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH"
Run Code Online (Sandbox Code Playgroud)并给它执行权限
sudo chmod a+x /etc/profile.d/SCRIPT_NAME.sh
Run Code Online (Sandbox Code Playgroud)dai*_*ain 55
对于完全熟悉 GUI 的新手(像我一样):
$HOME文件夹。.profile并单击“使用文本编辑器打开”。PATH="$PATH:/my/path/foo"..profile)。Edu*_* B. 47
对于仅对特定用户可用的持久环境变量。我强烈推荐 Ubuntu 官方文档。
https://help.ubuntu.com/community/EnvironmentVariables
参考上面的文档,我通过以下方式设置了我的Android SDK 路径工具:
~/.pam_environment在主目录中创建文件。PATH DEFAULT=${PATH}:~/android-sdk-linux/tools。Ian*_* B. 27
将该行放在您的~/.bashrc文件中。
每当您打开终端时,它就会被获取
编辑:基于下面的评论,因为这将适用于所有的shell(包括当你打一个更一般的设置Alt-F2在Unity),该行添加到您的~/.profile文件。但是,可能不应该同时执行这两项操作,因为PATH如果您打开终端,路径将被添加到您的环境中两次。
小智 17
要将其设置为系统范围,请将行附加export PATH=/path/you're/adding:$PATH到/etc/profile.
要仅为登录用户添加目录,请将同一行附加到~/.bash_profile.
3di*_*nce 16
将它添加到 .bashrc 会起作用,但我认为设置路径变量的更传统的方法是在 .bash_profile 中添加以下几行。
PATH=$PATH:/my/path/foo
export PATH
Run Code Online (Sandbox Code Playgroud)
根据此线程,似乎 Ubuntu 的行为与 RedHat 和克隆版本略有不同。
小智 11
在终端,cd到the_directory_you_want_to_add_in_the_path
echo "export PATH=$(pwd):\${PATH}" >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
这不是我的主意。我在此博客中找到了这种导出路径的方法。
小智 9
sudo vi /etc/profile.d/SCRIPT_NAME.sh
Run Code Online (Sandbox Code Playgroud)
在那里添加
export PATH=YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH
Run Code Online (Sandbox Code Playgroud)
小智 7
每当我“安装”我的 BASH 脚本文件夹时,我都会按照测试模式对$HOME/bin最近版本的 Ubuntu 中大多数 .profile 文件中的文件夹进行测试。我设置了一个看起来像的测试
if [ -d "/usr/scripts" ]; then
PATH="/usr/scripts:$PATH"
fi
Run Code Online (Sandbox Code Playgroud)
它大约 100% 的时间都可以工作,如果我决定移到/scripts离我的$HOME文件夹更近的某个地方,我可以使用快速“全部替换”在 GUI 文本编辑器中自由地更改它。我在 6 次 Ubuntu 安装中没有这样做,但“永远是明天”。秒
BZT
推荐的编辑方法PATH是从/etc/environment文件
示例输出/etc/environment:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Run Code Online (Sandbox Code Playgroud)
例如,添加新路径 /home/username/mydir
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/username/mydir"
Run Code Online (Sandbox Code Playgroud)
然后,重新启动您的 PC。
系统范围的环境变量
影响整个系统(而不仅仅是特定用户)的环境变量设置的合适文件是 /etc/environment。另一种方法是在 /etc/profile.d 目录中为此目的创建一个文件。
/etc/环境
此文件专门用于系统范围的环境变量设置。它不是一个脚本文件,而是由赋值表达式组成,每行一个。
注意:变量扩展在 /etc/environment 中不起作用。
更多信息可以在这里找到:EnvironmentVariables
小智 5
打开您的终端,输入gedit .profile并插入以下内容:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$PATH:$HOME/bin"
fi
#the following line add Bin where you dont have a Bin folder on your $HOME
PATH="$PATH:/home/mongo/Documents/mongodb-linux-i686-2.2.2/bin"
Run Code Online (Sandbox Code Playgroud)
关闭并打开终端,它应该可以工作。
| 归档时间: |
|
| 查看次数: |
1658282 次 |
| 最近记录: |