厌倦了一遍又一遍地输入相同的长命令?你觉得在命令行上工作效率低吗?Bash 别名可以为你创造一个与众不同的世界。
Bash 别名是一种用新的命令补充或覆盖 Bash 命令的方法。Bash 别名使用户可以轻松地在 POSIX 终端中自定义其体验。它们通常定义在 $HOME/.bashrc 或 $HOME/bash_aliases 中(它是由 $HOME/.bashrc 加载的)。
大多数发行版在新用户帐户的默认 .bashrc 文件中至少添加了一些流行的别名。这些可以用来简单演示 Bash 别名的语法:
alias ls='ls -F' alias ll='ls -lh'
但并非所有发行版都附带预先添加好的别名。如果你想手动添加别名,则必须将它们加载到当前的 Bash 会话中:
$ source ~/.bashrc
否则,你可以关闭终端并重新打开它,以便重新加载其配置文件。
通过 Bash 初始化脚本中定义的那些别名,你可以键入 ll 而得到 ls -l 的结果,当你键入 ls 时,得到也不是原来的 ls 的普通输出。
那些别名很棒,但它们只是浅尝辄止。以下是十大 Bash 别名,一旦你试过它们,你会发现再也不能离开它们。
首先设置
在开始之前,创建一个名为 ~/.bash_aliases 的文件:
$ touch ~/.bash_aliases
然后,确认这些代码出现在你的 ~/.bashrc 文件当中:
if [ -e $HOME/.bash_aliases ]; then source $HOME/.bash_aliases fi
如果你想亲自尝试本文中的任何别名,请将它们输入到 .bash_aliases 文件当中,然后使用 source ~/.bashrc 命令将它们加载到当前 Bash 会话中。
按文件大小排序
如果你一开始使用过 GNOME 中的 Nautilus、MacOS 中的 Finder 或 Windows 中的资源管理器等 GUI 文件管理器,那么你很可能习惯了按文件大小排序文件列表。你也可以在终端上做到这一点,但这条命令不是很简洁。
将此别名添加到 GNU 系统上的配置中:
alias lt='ls --human-readable --size -1 -S --classify'
此别名将 lt 替换为 ls 命令,该命令在单个列中显示每个项目的大小,然后按大小对其进行排序,并使用符号表示文件类型。加载新别名,然后试一下:
$ source ~/.bashrc $ lt total 344K 140K configure* 44K aclocal.m4 36K LICENSE 32K config.status* 24K Makefile 24K Makefile.in 12K config.log 8.0K README.md 4.0K info.slackermedia.Git-portal.json 4.0K git-portal.spec 4.0K flatpak.path.patch 4.0K Makefile.am* 4.0K dot-gitlab.ci.yml 4.0K configure.ac* 0 autom4te.cache/ 0 share/ 0 bin/ 0 install-sh@ 0 compile@ 0 missing@ 0 COPYING@
在 MacOS 或 BSD 上,ls 命令没有相同的选项,因此这个别名可以改为:
alias lt='du -sh * | sort -h'
这个版本的结果稍有不同:
$ du -sh * | sort -h 0 compile 0 COPYING 0 install-sh 0 missing 4.0K configure.ac 4.0K dot-gitlab.ci.yml 4.0K flatpak.path.patch 4.0K git-portal.spec 4.0K info.slackermedia.Git-portal.json 4.0K Makefile.am 8.0K README.md 12K config.log 16K bin 24K Makefile 24K Makefile.in 32K config.status 36K LICENSE 44K aclocal.m4 60K share 140K configure 476K autom4te.cache
实际上,即使在 Linux上,上面这个命令也很有用,因为使用 ls 列出的目录和符号链接的大小为 0,这可能不是你真正想要的信息。使用哪个看你自己的喜好。
感谢 Brad Alexander 提供的这个别名的思路。
只查看挂载的驱动器
(编辑:ASP站长网)
|