首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么每次打开终端让别名工作时我都必须使用.bashrc?

为什么每次打开终端让别名工作时我都必须使用.bashrc?
EN

Stack Overflow用户
提问于 2018-08-16 12:12:35
回答 3查看 15K关注 0票数 7

吉特工作得很好。我在Git中创建了一个别名,但问题是当我试图重新打开终端时,每次在终端中都需要运行. ~/.bashrc

当我每次重新打开终端时,我不需要提供源的最好方法是什么?

我做了什么?,我试图在这个文件中添加.bashrc文件的source,但是它是一个只读文件。我无法在此配置文件中添加.bashrc文件的.bashrc

代码语言:javascript
复制
open /etc/profile

添加了写入配置文件的权限,但仍然无法链接源文件。

代码语言:javascript
复制
sudo chmod u+w /etc/profile

配置文件:

代码语言:javascript
复制
# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
   eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
   [ -r /etc/bashrc ] && . /etc/bashrc
fi
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-08-16 12:57:30

看起来您的终端仿真器正在将bash作为登录shell启动。

如果是这样的话,它将读取/etc/profile进行配置,以及1中的以下文件(如果存在的话)(按重要性排列):

  • ~/..bash剖面
  • ~/..bash_登录
  • ~/.剖面

因此,它将忽略.bashrc文件。针对您的情况,正确的解决方法是将终端模拟器配置为以交互方式运行bash和非登录,或者将以下一行添加到~/.bash_profile中:

[ -f "$HOME/.bashrc" ] && . "$HOME/.bashrc"

这里是一个指向文档的链接,该文档根据正在运行的shell类型来加载哪些文件。

票数 15
EN

Stack Overflow用户

发布于 2018-08-17 08:40:14

根据@Aserre的回答,我遵循了这个步骤来解决这个问题

一个典型的OS安装不会为您创建一个.bash_profile。当您想从命令行运行函数时,这是必须的。

  1. 启动终端
  2. 键入cd ~/转到主文件夹
  3. 键入touch .bash_profile以创建新文件。
  4. 用您最喜欢的编辑器编辑.bash_profile (或者只需键入open -e .bash_profile在TextEdit中打开它。
  5. [ -f "$HOME/.bashrc" ] && source "$HOME/.bashrc"保存并关闭它

重新启动终端,它应该可以工作。

票数 11
EN

Stack Overflow用户

发布于 2021-05-18 03:37:45

您应该在您的source .profile文件中写入这一行.zshrc。这是因为默认的shell是zsh。如果您不希望执行此解决方案,则可以通过键入以下命令chsh -s /bin/bash来更改默认的shell,然后重新启动机器或虚拟机。那就不需要消息来源了。我希望这会有所帮助:)保重

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51876792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档