问题描述
刚刚安装了 Ubuntu 14.04.1 LTS。
根据.profile,
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash, if ~/.bash_profile or ~/.bash_login exists.
没有 ~/.bash_profile 或 ~/.bash_login。
打开终端时似乎没有来源 .profile 。
-
为什么在打开终端时它不来源 .profile?
-
如果没有来源,为什么 .profile 在那里?
-
我如何知道/控制打开新终端时的来源?
-
当一个新的终端打开时,它会执行 “login” 吗?
-
将 $HOME/bin 添加到我的路径的好地方在哪里? .bashrc?由于 .profile 具有相同的代码,这会导致问题吗?
最佳办法
-
因为默认情况下终端通常不运行登录 shell。他们通常还有运行登录 shell 的选项,这些 shell 是 source
.profile
。 -
控制登录 shell 的行为。
-
取决于 shell 。对于
bash
,请参阅 the set of startup files 。 -
在某种意义上不是(例如更新登录记录)。
-
如果您在
$HOME
中有一个名为bin
的文件夹,则 Ubuntu 的默认.profile
会将其添加到您的PATH
中。由于.profile
是在登录时获取的(即使使用 GUI 登录),对于在 re-login 之后启动的非登录 shell,它应该是PATH
的一部分。如果一个目录在PATH
中出现两次并没有错,详见 this U&L question。
次佳办法
我发现我必须编辑默认配置文件。在终端中,单击首选项 >简介 >编辑 >命令>以登录 shell 运行命令
之后,新终端将获取 .profile 脚本。