Linux Bash Alias 教程 :处理别名命令
别名命令是用一个文本替换另一个文本的简单字符串,当它用作简单命令的第一个单词时。
在本文中,让我们了解一下如何永久和临时设置/取消设置 bash 别名。让我们还回顾一些可以在 bash 启动文件中使用的有用 bash 别名示例。
如何设置别名
可以使用以下语法在命令行、.bash_profile 或 .bashrc 中定义别名:
$ alias name='unix command with options'
- alias - 是一个内置的 shell
- name – 任何用户定义的别名的简单名称。
- command – 任何 unix 命令,可能带有选项。
这意味着 name 是命令的别名。每当将 name 作为命令键入时,bash 将替换相应的命令及其位置的选项。
注意:等号两边都没有空格。如果被别名的字符串包含多个单词,则需要在 command 周围加上引号。
在命令行中执行此命令使其成为临时别名。也就是说,此别名在您退出 shell 之前可用。将别名存储在 bash 启动文件中使其成为永久别名。
以下别名可能有用。您可以在 ~/.bashrc 文件中设置这些别名。
最常见的别名示例
以下别名可供您立即使用。你最喜欢的别名是什么?
在 vim 中打开最后修改的文件
alias Vim="vim `ls -t | head -1`"
查找前 5 个大文件
alias findbig="find . -type f -exec ls -s {} \; | sort -n -r | head -5"
用于 bash 进程的 Grep
alias psg="ps -aux ¦ grep bash"
列表包括带有指示器和颜色的隐藏文件
alias ls='ls -aF --color=always'
长格式列表
alias ll='ls -l'
清除所有历史记录和屏幕
alias hcl='history -c; clear'
使基本命令具有交互性和详细性
alias cp="cp -iv" # interactive, verbose
alias rm="rm -i" # interactive
alias mv="mv -iv" # interactive, verbose
alias grep="grep -i" # ignore case
易于使用的常用命令的别名
alias x="exit"
清屏并列出文件
alias cls='clear;ls'
文件系统磁盘空间使用
alias dus='df -h'
导航到不同的目录
alias ..='cd ..'
alias ...='cd ../..'
应为您的环境修改的别名示例
本节提供的别名示例在使用前应根据您的环境进行修改。
删除火狐锁
alias rm_fire_lock='/bin/rm .mozilla/firefox/NAME.default/.parentlock' # edit NAME
使用 loginname 通过 ssh 登录到远程机器
alias server_name='ssh 192.168.1.1 -l tom' # change the ip & user name
alias ser2='ssh www.dbserver.com -l kgf' # create as many alias as required.
登录远程 cvs 服务器
export CVS_RSH=/usr/local/bin/ssh
alias cvl='cvs -d :ext:username@cvs.server.com:/usr/local/cvsroot' # change required.
卸载 cdrom
alias umnt='umount /mnt/cdrom' # cdrom / thumb drive.
如何查看所有别名
执行不带参数的别名以查看在 shell 中设置的别名列表。
$ alias
alias ..='cd ..'
alias ...='cd ../..'
alias mnt='mount /mnt/cdrom'
alias umnt='umount /mnt/cdrom'
alias dus='df -h'
要查看特定别名,请输入格式为“alias aliasname”的命令,如下所示。
$ alias dus
alias dus='df -h'
如何暂时停止使用别名
当您想调用命令而不是别名时,您必须对其进行转义并调用。
$ \aliasname
例如,别名 cp=”cp -iv” 将询问您是否要覆盖文件。当您复制大量您已经知道要覆盖的文件时,这可能会很烦人。可能您可能想暂时使用常规 cp 命令而不是 cp 别名。
因此,如果存在别名 cp,但您想改用 cp 命令,请暂时转义别名,如下所示:
\cp * /backup/files/
如何删除别名
unalias 是用于删除别名的内置 shell。要删除特定别名:
$ unalias hcl
where unalias is a shell built-in.
mnt is an alias name.
$ hcl
-bash: hcl: command not found
如何删除所有别名
unalias 带有 -a 选项,删除所有别名。
$ unalias -a
$ alias
注意:Shell 函数更快。别名在函数之后查找,因此解析速度较慢。虽然别名更容易理解,但对于几乎所有用途,shell 函数都优于别名。您应该非常小心地将标准命令替换为别名或函数。
- 点赞
- 收藏
- 关注作者
评论(0)