gpt4 book ai didi

macos - Mac 上 Bash 启动文件的最佳实践

转载 作者:行者123 更新时间:2023-11-29 08:45:49 31 4
gpt4 key购买 nike

据我了解,启动文件在 Mac 上被 bash shell 读取的顺序是......

  1. ~/.bash_profile
  2. ~/.bash_login
  3. ~/.profile

..一旦找到此列表中的一个文件,将忽略另一个文件的内容。

话虽这么说,对于这些文件中的哪一个应该是我真正的 Bash 启动文件,是否有最佳实践?

一方面,如果 .bash_profile 优先于任何其他潜在的启动文件,那么应该使用它,因为您可以确定该启动文件中的信息在 100% 的时间都在运行.

另一方面,如果 .profile 是默认存在于 Mac 系统上的文件,而 .bash_profile 需要手动创建,那么也许应该使用它,并且永远不会有创建 .bash_profile 的理由文件。

想法?

最佳答案

这取决于您是否使用 bash 以外的 shell,以及您是否在配置文件中使用 bash-only 功能。如果您使用其他 sh 风格的 shell(sh、ksh、zsh 等,但不是 csh 或 tcsh),请不要使用 bash-only 功能,并且无论您在哪个 shell 中都想要相同的设置,您应该使用 .profile .如果您想使用仅限 bash 的功能,请使用 .bash_profile。如果你想使用多个 shell 但也使用 bash-only 特性,将通用的东西放在 .profile 中,将 bash-only 的东西放在 .bash_profile 中,然后添加 if [ -f ~/.profile ];然后 。 ~/.个人资料; fi 到 .bash_profile。

如果您只使用 bash,但不依赖个人资料中的任何仅限 bash 的功能,那么这并不重要。

实际上还有另一个复杂的问题:登录 bash shell 源是 .bash_profile、.bash_login 或 .profile;非登录交互式 bash shell(例如子 shell)改为源 .bashrc。我倾向于在登录和非登录 shell 中使用相同的设置,所以我将所有有趣的东西放在 .bashrc 中,然后是 if [ -f ~/.bashrc ];然后 。 ~/.bashrc; .bash_profile 中的 fi。如果我还使用其他 shell,我可能会将其中大部分放在 .profile 中,并改为使用 .bashrc 源。

关于macos - Mac 上 Bash 启动文件的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4493063/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com