我是 UNIX 新手。我使用的是 mac OS X 10.8。我在主目录下创建了 .profile。但是,登录时它不起作用。我总是必须使用命令强制它工作$ . ~/.profile
。有人能帮我解释一下吗?
另一个问题,我尝试编写一个名为 wld 的 Cshell 并使其可执行。但是,我无法仅通过键入 来调用它$ wld
。我必须键入$./wld
。如何使其正常工作?
答案1
如果 ~/.bash_profile 或 ~/.bash_login 存在,bash 不会读取 ~/.profile。另外请记住,~/.profile 由登录 shell 的命令解释器执行,而 ~/.bashrc 由非登录 shell 执行。您可以在此处阅读更多信息:http://stefaanlippens.net/bashrc_and_others
脚本通常放在~/.bashrc中,~/.profile中有这样的代码:
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi