基本上我创建了一个别名
alias 1="python /root/sqlmap-dev/sqlmap.py"
当我输入 1 时,它工作得很好,但如果我打开另一个终端并再次输入 1 。它无法识别别名!
那么如何使别名随处可用呢?
答案1
别名特定于定义它们的会话。您需要在每个会话中定义它们。幸运的是,有一个机制可以做到这一点:每次新的终端会话开始时它都会执行相同的操作。
~/.bashrc
每次您(您的用户帐户)打开新的终端会话时都会执行该文件。请注意,它的名称以句点开头,因此它是一个隐藏文件。确保在文件浏览器中显示隐藏文件(可能通过Ctrl + H)。~/.bashrc
通常用于定义别名或 bash 函数等内容。
然而,这并不意味着您应该在那里定义它。在 Debian 及其衍生品如 Ubuntu(及其衍生品如 Kubuntu、Lubuntu、Mythbuntu、Ubuntu Budgie、Ubuntu GNOME、Ubuntu Kylin、Ubuntu MATE、Ubuntu Studio、Xubuntu 等)、Deepin、Whonix 等上,用户自定义 bash别名通常存储在~/.bash_aliasas
大多数系统上默认情况下不存在的位置,因此如果您使用其中之一,请继续创建它。如果存在,则会自动调用它。
如果您的系统没有自动调用该文件,您仍然可以享受能够定义 bash 别名的奢侈(可以有很多别名!比如很多很多!我的主机的主帐户上有大约 60 个帐户,并且不希望它们仅位于我的~/.bashrc
.) 中的某个专用位置。只需将这些行添加到您的~/.bashrc
:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
请注意,当您开始终端会话。对该文件的更改不会追溯应用于打开的终端会话,这意味着您无法在定义/修改该文件中的别名之前打开的终端中使用新定义的 bash 别名。
答案2
问题在于alias=...
您为当前 shell 会话创建别名的命令,因此您必须为启动的每个新会话(即每次打开终端时)定义别名。
要使别名持久存在,请将定义放入 shell 的配置文件中,例如~/.bashrc
bash。
答案3
将其放入 shell 的配置文件中,例如~/.profile
.