.bashrc
我的主目录中有一个单行文件:
alias countlines='find . -type f -print0 | xargs -0 cat | wc -l'
但它没有创建别名。这是为什么呢?
答案1
在 OSX 中,.bash_profile
使用 来代替.bashrc
。
是的,该.bash_profile
文件应该位于/Users/YourName/
(换句话说,~/.bash_profile
)
例如,/Users/Aaron/.bash_profile
答案2
.[bash_]profile
并且.bashrc
可以在 OS X 和 Linux 上使用。前者在 shell 为登录 shell 时加载;后者在 shell 不是登录 shell 时加载。真正的区别在于,Linux 在用户登录图形会话时运行登录 shell,然后,当您打开终端应用程序时,这些 shell 是非登录 shell;而 OS X 在图形登录时不运行 shell,当您从 Terminal.app 运行 shell 时,那就是登录 shell。
如果你希望你的别名在登录和非登录 shell 中都能工作(你通常会这样做),你应该将它们放在 .bashrc 中和在你的 .bash_profile 中源 .bashrc,其中包含如下一行:
[ -r ~/.bashrc ] && source ~/.bashrc
这适用于任何使用 bash 的系统。
答案3
自从MacOS Catalina zsh
是默认 shell。在此操作系统上,将别名添加到~/.zshrc
预卡塔利娜添加别名至~/.bash_profile
答案4
我尝试使用该解决方案来更新。bash_profile和.bashrc但这不起作用,因为 MacOS >= 10.15
(Catalina) 默认使用 zsh。
所以:
- 创建一个新文件,
~/.zprofile
并在其中添加别名。 - 使用命令
source ~/.zprofile
在同一个 shell 中执行或者只是打开一个新终端。
并且您的更改将是永久性的。