自定义命令行快捷方式 (aliases)
上图展示的是,bash 命令设置别名的例子
在本文中,你将会学到如何给 bash 命令创建别名,以及如何通过一个 bash 命令运行多个命令。
TL;DR — 第一部分描述了为 bash 命令设置别名的重要性,以及可以节省多少时间等等,如果你只是想学习如何设置 bash 命令的别名,请跳至步骤1。step 1。
提高效率
随着我们的成长(我知道,时光飞逝),我们肩上承担着更多的责任。例如:照顾家庭,理财,花时间陪伴亲人,送小孩上幼儿园以及其他成人世界相关的生活中的事情。
时间是影响工作效率的重要因素,尤其是对程序开发这者来讲。所有的这些新的责任,如果你想花更少的时间去学习它了解它,那么效率就很重要。
如果你想成为一个厉害的 Web 开发人员,把开发当成你自己的事业,教书育人,或者只是提高你自己的的开发技巧,我将每周发布有关最新 Web 开发语言的提示和技巧。
程序员的世界
作为一程序员,在项目开发中,我们经常多次运行一些相同的 bash 命令。例如:cd ..
,ls -l
或者 pwd
。如果在开发中运行这些命令的频率是每周一次,那不会影响开发的效率。但是从长远的角度来看,每天运行两次呢?
在 bash 命令中有些命令很长,有些很短,有些很难记,有些就很容易记住。利用这些 bash 命令的重点是要提高开发的效率,这就意味着你可以自己去创造一些可读性比较好的,易于记住容易编写的 bash 命令的别名。
需要注意的地方是不是为每个命令创建别名,而是为那些频繁使用的命令创建别名。并且注意不要用某些保留字去做别名,并且编写完之后,先进行测试。
简化 git 命令
我做了一个简单的测试,为了说明将更改的代码推送到 Github 需要多少时间。 一般来说,平均每个程序员将更改的代码推送到[github.com](http://www.github.com/)
大约需要 20-25 秒。
# 测试
git add .
git commit - m "minor changes"
git push -u origin master
假设你每周至少进行 15 次 git push
操作,而将更改的代码推送到仓库的的总时间大约需要 20 秒。
- 一周将花费 5 分钟
- 一个月就要花费 20 分钟
- 一年就花费 4 个小时
如果我们将者三条命令合并,通过别名 lazyman "minor changes"
去执行, 花费的时间将从 20 秒降到 5 秒。
- 一周将花费 1.25分钟
- 一个月就要花费 5 分钟
- 一年就花费 1 个小时
一般来讲,我们已经将效率提高 3 倍。 这还只是一个简单的例子,但是可以想象的到我们节省了多少时间。例如,我们每天需要运行 run apache server && run tests && report data && close
或者 gcc project-source-code.c -o executable-file-name
15–30次 。
如何统计性能提升了多少? (对于严谨的人来说)
# 公式
((旧- 新) / 旧) * 100%= ((20 - 5 秒) / 20 秒) * 100%
= 75 % (性能提升)
在给 bash 命令创建别名之前
为了创建别名,一般将创建的命令存放在 ~/.bashrc
文件中。这是一个隐藏的文件,你可以在你的终端中任何位置打开它。然而,良好的编程习惯要求我们,最好是将系统文件和个人创建的文件分开。因此,我们在用户的家目录创建一个 ~/.custom_aliases
文件,用来存放你编写的别名。 同时,要记住每次对这个文件进行修改时,记得运行 source ~/.custom_aliases
命令,否则你的修改将不会生效。
步骤 1 — 创建一个 custom_aliases
文件
你创建的所有别名都必须存储在此文件中。
# 创建文件
touch ~/.custom_aliases
步骤 2 — 打开 custom_aliases
文件
通过文本编辑器打开 custom_aliases
文件,你可以通过 gedit 、 code (Visual Studio Code) 或者其他你喜欢和常用的编辑器
Visual Studio Code (如果你已经安装了)
# 打开文件
code ~/.custom_aliases
Gedit
# 打开文件
gedit ~/.custom_aliases
步骤 3 — 创建快捷方式 (aliases)
让我们创建一个简单的别名,当我们在 bash 终端中输入「Welcome」时,它将打印出「Welcome John Doe」。
alias welcome='echo "Welcome $USER."'
步骤 4 — 更新修改内容
在执行新创建的 bash 命令之前,必须更新 custom_aliases
文件。
# 更新文件
source ~/.custom_aliases
步骤 5 — 执行新的 bash 命令
在你首选的命令行中输入以下内容。
# 命令行
welcome
> Welcome John Doe.
做得好!现在你已经创建了一个用于定义别名的自定义文件,让我们看看您可以创建哪些类型的命令。
自定义bash
命令别名
下面是一些我用来提高工作效率的bash
命令别名。
温馨提示: 为了保证添加的命令别名更具有结构化,请将相关的别名放在对应的注释下面,就像下面的例子一样。
# Version Control
alias gs="git status"
alias gd="git add ."
alias gp="git push -u origin master"
# Directory
alias diskusage="df -h"
alias folderusage="du -ch"
alias totalfolderusage="du -sh"
# Various
alias opencustomaliases="code ~/.custom_aliases"
alias updatecustomaliases="source ~/.custom_aliases"
alias updatethenupgrade="sudo apt-get update && sudo apt-get upgrade"
特别注意的是不同的操作系统可能会有所不同,在添加bash
命令别名到custom_aliases
文件之前,要在终端测试,确保这些命令是正确的。
一次运行多个命令
你也可以通过一条语句来运行多个命令。有两种方法可以实现:创建函数或别名。
示例 1 — 创建函数
# Multiple commandsfunction lazyman() {
git add .
git commit -a -m "$1"
git push -u origin master
}
示例 2 — 创建别名
# Multiple commandsalias lazyman="git add . && git commit -a -m '$1' && git push -u origin master"
别忘了运行 source ~/.custom_aliases
命令来更新 custom_aliases
文件,接下来键入命令 lazyman "First commit"
就OK了。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。