7 3 1 用户和用户组管理 用户管理命令 useradd
目录:
您是否经常发现自己在命令行上键入了一个长命令,或者在bash历史记录中搜索了先前键入的命令? 如果您对这些问题中的任何一个的回答为“是”,那么您将发现bash别名很方便。 Bash别名使您可以为较长的命令设置一个令人难忘的快捷方式命令。
Bash别名实际上是快捷方式,可以使您不必记住长命令,并且在使用命令行时无需进行大量键入操作。 例如,您可以将别名
tgz
设置为
tar -xvfz
命令的快捷方式。
本文介绍了如何创建bash别名,以便您可以在命令行上提高工作效率。
创建Bash别名
在bash中创建别名非常简单。 语法如下:
alias alias_name="command_to_run"
要创建新的bash别名,请先键入
alias
关键字。 然后声明别名,后跟一个等号以及键入别名时要运行的命令。 该命令需要用引号引起来,并且等号之间不能有空格。 每个别名都需要在新行中声明。
ls
命令可能是Linux命令行上最常用的命令之一。 我通常将此命令与
-la
开关一起使用,以长列表格式列出所有文件和目录,包括隐藏文件和目录。
让我们创建一个名为
ll
的简单bash别名,这将是
ls -la
命令的快捷方式。 为此,请打开终端窗口并键入:
alias ll="ls -la"
现在,如果您在控制台中输入
ll
,则将获得与输入
ls -la
相同的输出。
ll
别名仅在当前的shell会话中可用。 如果退出会话或从另一个终端打开新会话,则别名将不可用。
要使别名持久化,您需要在
~/.bash_profile
或
~/.bashrc
文件中声明它。 在文本编辑器中打开
~/.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 ~/.bash_profile
如您所见,创建简单的bash别名既快捷又容易。
如果要使
.bashrc
更具模块化,则可以将别名存储在单独的文件中。 某些发行版(如Ubuntu和Debian)包括
.bash_aliases
文件,该文件来自
~/.bashrc
。
使用参数创建Bash别名(Bash函数)
有时您可能需要创建一个可以接受一个或多个参数的别名,这就是bash函数派上用场的地方。
创建bash函数的语法非常简单。 它们可以用两种不同的格式声明:
function_name () { }
要么
function function_name { }
要将任意数量的参数传递给bash函数,只需将其放在函数名称之后,并以空格分隔即可。 传递的参数为
$1
,
$2
,
$3
等,与参数在函数名称后的位置相对应。
$0
变量保留用于函数名称。
让我们创建一个简单的bash函数,该函数将创建一个目录,然后导航到其中:
〜/.bashrc
mkcd () { mkdir -p -- "$1" && cd -P -- "$1" }
与别名相同,将函数添加到
~/.bashrc
文件中,然后运行
source ~/.bash_profile
重新加载该文件。
现在,您无需输入
mkdir
来创建一个新目录,而是使用
cd
来进入该目录,只需输入:
mkcd new_directory
-
--确保您不会意外将额外的参数传递给命令。 例如,如果您尝试创建以-(破折号)开头的目录而不使用--则目录名称将被解释为命令参数。&&-确保仅在第一个命令成功时才运行第二个命令。
结论
到目前为止,您应该对如何创建bash别名和函数有很好的了解,这些别名和函数将使您在命令行上的生活更轻松,更高效。
bash终端






