如何创建 Bash 别名 alias

评论 0 浏览 0 2018-12-21

您是否经常发现自己在命令行上输入了很长的命令,或者在 bash 历史记录中搜索以前输入的命令?如果您对其中任何一个问题的回答是肯定的,那么您会发现 bash 别名很方便。 Bash 别名允许您为较长的命令设置令人难忘的快捷命令。

Bash 别名本质上是快捷方式,可以让您不必记住长命令,并在使用命令行时消除大量输入。例如,您可以将别名 tgz 设置为 tar -xvfz 命令 .

本文介绍了如何创建 bash 别名,以便您可以在命令行上提高工作效率。

创建Bash别名

在 bash 中创建别名非常简单。语法如下:

alias alias_name="command_to_run"

别名声明以 alias 关键字开头,后跟别名、等号和键入别名时要运行的命令。该命令需要用引号引起来并且等号周围没有空格。每个别名都需要在新行中声明。

ls 命令可能是 Linux 命令行中最常用的命令之一。我通常将此命令与-la 开关一起使用,以列出所有文件和目录,包括以长列表格式隐藏的文件和目录。

让我们创建一个名为 ll 的简单 bash 别名,它将作为 ls -la命令 .为此,请键入打开终端窗口并键入:

alias ll="ls -la"

现在,如果您在终端中输入ll,您将获得与输入ls -la 相同的输出。

ll 别名仅在当前 shell 会话中可用。如果您退出会话或从另一个终端打开一个新会话,别名将不可用。

要使别名持久化,您需要在 ~/.bash_profile~/.bashrc 中声明它 文件。

在您的文本编辑器中打开文件 :

nano ~/.bashrc

并添加您的别名:

~/.bashrc
# Aliases
# alias alias_name="command_to_run"

# Long format list
alias ll="ls -la"

# Print my public IP
alias myip='curl ipinfo.io/ip'

别名应以易于记忆的方式命名。还建议添加注释以供将来参考。

完成后,保存并关闭文件。通过键入以下命令使别名在当前会话中可用:

source ~/.bashrc

如您所见,创建简单的 bash 别名非常快捷。

如果你想让你的.bashrc 更加模块化,你可以将你的别名存储在一个单独的文件中。某些发行版(如 Ubuntu 和 Debian)包含一个 .bash_aliases 文件,该文件源自 ~/.bashrc

用参数创建Bash别名(Bash函数)

有时您可能需要创建一个接受一个或多个参数的别名。这就是 bash 函数派上用场的地方。

创建bash函数的语法非常简单。它们可以用两种不同的格式来声明。

function_name () {
  [commands]
}

function function_name {
  [commands]
}

要向bash函数传递任何数量的参数,只需把它们放在函数名称的后面,用空格隔开。传递的参数是$1, $2, $3, 等等, 与参数在函数名后面的位置相对应。$0变量是为函数名保留的。

让我们创建一个简单的bash函数,它将创建一个目录,然后导航到该目录中。

~/.bashrc
mkcd ()
{
  mkdir -p -- "$1" && cd -P -- "$1"
}

和别名一样,把函数添加到你的~/.bashrc文件中,然后运行source ~/.bash_profile来重新加载文件。

现在,你不需要用mkdir来创建一个新的目录,然后用cd移动到该目录,而是可以简单地键入。

mkcd new_directory

如果你想知道什么是--&&,这里有一个简短的解释。

  • -- - 确保你不会意外地传递一个额外的参数给命令。例如,如果你试图创建一个以-(破折号)开头的目录,而不使用--,该目录名称将被解释为一个命令参数。
  • && - 确保只有在第一条命令成功的情况下才会运行第二条命令。

总结

现在你应该对如何创建bash别名和函数有了很好的了解,这将使你在命令行上的生活更容易、更有成效。

如果你有任何问题或反馈意见,请随时留言。

最后更新2023-10-04
0 个评论
标签