我想将别名添加到我的环境中,以便它们在所有终端实例中都可用。
我得到了这个答案:
是的,您可以将其放入.bashrc,.bash_profile或.profile中。在某些系统上,shell初始化脚本还会提供.bash_aliases或.aliases,因此,如果系统中存在这些文件之一,则可以使用它们。
但是我找不到这些文件。
(我将OS X配置为查看隐藏文件,但以上4都看不到。)
我想将别名添加到我的环境中,以便它们在所有终端实例中都可用。
我得到了这个答案:
是的,您可以将其放入.bashrc,.bash_profile或.profile中。在某些系统上,shell初始化脚本还会提供.bash_aliases或.aliases,因此,如果系统中存在这些文件之一,则可以使用它们。
但是我找不到这些文件。
(我将OS X配置为查看隐藏文件,但以上4都看不到。)
Answers:
如果使用bash,则将别名命令添加到〜/ .bashrc并将类似的文件另存为〜/ .bash_profile:
. ~/.bashrc
当bash作为交互式非登录shell调用时,它将读取.bashrc而不是.bash_profile。当bash被作为交互式登录shell调用时,它将读取.bash_profile而不是.bashrc。
终端和iTerm默认情况下会打开新的外壳程序作为登录外壳程序,因此许多OS X用户仅使用.bash_profile作为其个人配置文件。例如,tmux和Emacs中的shell模式虽然将新的shell作为非登录shell打开。
.profile也可以由其他shell(如ksh)读取。如果.bash_profile和.profile同时存在,则bash仅在作为交互式登录shell调用时才读取.bash_profile。
有关更多信息,请参见https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html。
zsh
,请将别名命令添加到~/.zshrc
。~/.zshrc
(交互)非登录外壳和登录外壳都可以读取它,因此您不必从中获取它~/.zprofile
。
打开一个新的终端窗口并转到您的主目录(只需键入cd
并按Enter)。
此后,ls .bash*
还键入和ls .profile
(请注意,每个文件名都以点开头)。如果有这些文件(并且至少应该有一个.profile文件),则需要对其进行编辑并将别名添加到其中。我使用VI(或VIM)来编辑这些文件,但是您可以使用其他编辑器(实际上,在“终端”窗口中键入open .bash_profile
将在TextEditor中打开它,如果您不熟悉VI,可能会更加人性化) 。如果由于某种原因您没有这些文件,则创建一个新文件(并将其命名为.bashrc),在其中添加别名行(因此这将是每行一个命令,就像您键入它们一样)在外壳中),然后保存文件。然后,您可以使用来创建指向.bash_profile和.profile的符号链接ln -s .bashrc .bash_profile; ln -s .bashrc .profile
。
我通常要做的是将.bashrc和.bash_profile符号链接到.profile,然后只需要担心一个文件。
这些文件之间的区别在于,bash将根据是作为登录shell启动(通常是登录过程将作为登录shell启动该shell)还是作为一个交互式(而非登录)shell来获取不同的文件,或者非交互式外壳。不管bash是如何启动的,使这三个文件基本相同都为我提供了一致的环境。
通过执行操作man bash
,您将获得更多信息,但请做好准备,这是一个漫长的手册页。您将能够看到三个文件(.bashrc,.profile和.bash_profile)中的哪个文件,具体取决于启动bash的方式。
希望有帮助-否则,请给我喊。
如果您已安装ruby,请查看此ruby脚本https://github.com/ytbryan/aka
该脚本提供了持久性和点文件自动获取等功能。您可以在不中断工作流程的情况下通过终端管理别名并打开文本编辑器。
免责声明:我编写了此脚本并每天使用。让我知道是否有任何错误/想法。:)
我遇到了同样的问题,即我的“个人档案”位置中没有.bash或.profile。我终于在/ etc中找到了它