![bash:在一个会话之外保存别名](https://linux22.com/image/63612/bash%EF%BC%9A%E5%9C%A8%E4%B8%80%E4%B8%AA%E4%BC%9A%E8%AF%9D%E4%B9%8B%E5%A4%96%E4%BF%9D%E5%AD%98%E5%88%AB%E5%90%8D.png)
最近,我一直在摆弄 Linux 的终端命令,试图更好地了解系统。
我很高兴知道我可以使用别名命令为命令指定不同的名称以便调用它们。例如,
alias print="echo"
在这种情况下,echo
将会被替换print
。
唯一的问题是它似乎只停留一个终端会话。在不使用第三方软件的情况下,有没有办法可以永久保留这些别名?如果有软件替代品,我会很高兴听到它们。
我只是在寻找一种无需下载任何内容即可完成此操作的方法。
答案1
您需要将别名放入一个文件中,该文件将在所有会话开始时读取。
您的~/.bashrc
文件应包含以下内容:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
这意味着如果您有一个文件~/.bash_aliases
file,那么它将被获取,并且其中定义的所有别名都将在会话中应用。最佳做法是将别名保存在 中~/.bash_aliases
,如果您没有该文件,可以手动创建它。作为替代方案,您可以将别名放入~/.bashrc
.
另请注意,如果您想永久保存仅为当前终端会话定义的别名,您可以运行:
alias >> ~/.bash_aliases
答案2
.bashrc
常见的方法是在主目录的文件中设置别名(bash
当然如果您用作 shell)。
.bashrc
是bash
您启动终端时读取的文件。
只需编辑它(注意,.
默认情况下隐藏名称以 a 开头的文件)并添加一行,例如:
alias ll='ls -l'
如果您想在不启动新终端的情况下测试它,只需source
:
$ ll
bash: ll: command not found
$ source ~/.bashrc
$ ll
-rw-rw-r-- 1 apaul apaul 31 Mar 7 21:51 file1.txt
答案3
在您的主目录中创建一个文件.bashalias
,或编辑现有文件~/.bashalias
。要在每次启动 bash 会话时读取此文件,请将以下内容添加到您的~/.bashrc
:
source ~/.bashalias
答案4
zsh
如果有人使用添加别名的方式,请添加到前面的注释中,.zshrc
使用以下命令使用该文件:
sudo nano ~/.zshrc
请注意,这sudo
不是必需的,您vim
也可以使用其他编辑器选项,顺便说一句,gedit
如果您的计算机使用该文本编辑器,GUI 也是一个不错的选择。
然后您必须在文件末尾添加别名:
alias print="echo"
我不确定为什么在我的情况下更改.bashrc
文件不起作用,可能该行为是由默认终端的更改产生的。