Translated.

This commit is contained in:
David Chen 2018-10-18 15:10:44 +08:00
parent 1e9ae6eb52
commit 27551973da

View File

@ -2,9 +2,9 @@
命令行:增强版
======
我不确定有多少Web 开发者能完全逃避使用命令行。就我来说我从1997年上大学就开始使用命令行了那时l33t-hacker 让我着迷,同时我也觉得它很难掌握。
我不确定有多少Web 开发者能完全逃避使用命令行。就我来说我从1997年上大学就开始使用命令行了那时l33t-hacker 让我着迷,同时我也觉得它很难掌握。
过去这些年我的命令行本领在逐步加强,我经常会去搜寻在我工作中能使用的更好的命令行工具。下面就是我现在使用的增强原有命令行工具的列表。
过去这些年我的命令行本领在逐步加强,我经常会去搜寻在我工作中能使用的更好的命令行工具。下面就是我现在使用的用于增强原有命令行工具的列表。
### 怎么忽略我所做的命令行增强
@ -12,7 +12,7 @@
通常情况下我会用别名将新的或者增强的命令行工具链接到原来的命令行(如`cat`和`ping`)。
如果我需要运行原来的命令的话(有时我确实需要这么做),我像下面这样来运行未加修改的原来的命令行。我用的是Mac 你的输出可能不一样)
如果我需要运行原来的命令的话(有时我确实需要这么做),我像下面这样来运行未加修改的原来的命令行。我用的是Mac你的输出可能不一样
```
@ -92,7 +92,7 @@ export FZF_DEFAULT_OPTS="--bind='ctrl-o:execute(code {})+abort'"
方便的热键绑定包括:
* P - CPU 使用率排序
* P - CPU使用率排序
* M - 内存使用排序
* F4 - 用字符串过滤进程(例如只看包括"node"的进程)
* space - 锚定一个单独进程,这样我能观察它是否有尖峰状态
@ -100,7 +100,7 @@ export FZF_DEFAULT_OPTS="--bind='ctrl-o:execute(code {})+abort'"
![htop output][10]
在Mac Sieera 上htop 有个奇怪的bug不过可以通过以root 运行来绕过(我实在记不清这个bug 是什么,但是这个别名能搞定它,有点讨厌的是我得每次都输入 root 密码。)
在Mac Sieera 上htop 有个奇怪的bug不过这个bug可以通过以root运行来绕过(我实在记不清这个bug 是什么但是这个别名能搞定它有点讨厌的是我得每次都输入root密码。)
```
@ -111,7 +111,7 @@ alias top="sudo htop" # 给top加上别名并且绕过 Sieera 上的bug
### diff-so-fancy > diff
我非常确定我是一些年前从 Paul Irish 那儿学来的这个技巧,尽管我很少直接使用`diff`但我的git命令行会一直使用`diff`。`diff-so-fancy`给了我代码颜色和更改字符高亮的功能。
我非常确定我是一些年前从 Paul Irish 那儿学来的这个技巧,尽管我很少直接使用`diff`但我的git命令行会一直使用`diff`。`diff-so-fancy`给了我代码语法颜色和更改字符高亮的功能。
![diff so fancy][12]
@ -158,7 +158,7 @@ $ fd cli -x wc -w # 搜索"cli"并且在每个搜索结果上运行`wc -w`
对我来说,知道当前的磁盘空间使用是非常重要的任务。我用过 Mac 上的[Dish Daisy][17],但是我觉得那个程序产生结果有点慢。
`du -sh`命令是我经常会跑的命令(`-sh`是指结果以总结和人类可读的方式显示),我经常会想要深入挖掘那些占用了大量磁盘空间的目录。
`du -sh`命令是我经常会跑的命令(`-sh`是指结果以`总结``人类可读`的方式显示),我经常会想要深入挖掘那些占用了大量磁盘空间的目录,看看到底是什么在占用空间
`ncdu`是一个非常棒的替代品。它提供了一个交互式的界面并且允许快速的扫描那些占用了大量磁盘空间的目录和文件它又快又准。尽管不管在哪个工具的情况下扫描我的home目录都要很长时间它有550G
@ -194,7 +194,7 @@ alias du="ncdu --color dark -rr -x --exclude .git --exclude node_modules"
几乎所有的单独命令行工具都有一个相伴的手册,其可以被`man <命令名>`来调出,但是在`man`的输出里找到东西可有点让人困惑,而且在一个包含了所有的技术细节的输出里找东西也挺可怕的。
这就是TL;DR(译注:英文里`文档太长,没空去读`的缩写)项目的初衷。这个一个由社区驱动的文档系统,而且针对的是命令行。就我现在用下来,我还没碰到过一个命令它没有相应的文档,你[也可以做贡献][22].
这就是TL;DR(译注:英文里`文档太长,没空去读`的缩写)项目创建的初衷。这是一个由社区驱动的文档系统,而且针对的是命令行。就我现在用下来,我还没碰到过一个命令它没有相应的文档,你[也可以做贡献][22]
![TLDR output for 'fd'][23]
@ -210,10 +210,10 @@ alias help='tldr'
### ack || ag > grep
`grep`毫无疑问是一个命令行上的强力工具,但是这些年来它已经被一些工具超越了其中两个叫`ack`和`ag`。
`grep`毫无疑问是一个命令行上的强力工具,但是这些年来它已经被一些工具超越了,其中两个叫`ack`和`ag`。
就我个人来说`ack`和`ag`都尝试过,并没有非常明显的个人偏好,(那也就是说他们都很棒,并且很相似)。我倾向于默认只使用`ack`,因为这三个字符就在指尖,很好打。并且,`ack`有大量的`ack --`参数可以使用,(你一定会体会到这一点。)
我个人对`ack`和`ag`都尝试过,而且没有非常明显的个人偏好,(那也就是说他们都很棒,并且很相似)。我倾向于默认只使用`ack`,因为这三个字符就在指尖,很好打。并且,`ack`有大量的`ack --`参数可以使用,(你一定会体会到这一点。)
`ack`和`ag`都将使用正则表达式来表达搜索,这非常契合我的工作,我能指定搜索的文件类型而不用使用类似于`--js`或`--html`的文件标识(尽管`ag`比`ack`在文件类型过滤器里包括了更多的文件类型。)