互联网上关于 Linux 和开源的信息非常丰富,但是当您专注于工作时,通常需要快速文档。自从 Unix 的早期,甚至在 Linux 出现之前,就有了 man
(“manual”的缩写)和 info
命令,这两个命令都显示关于命令、配置文件、系统调用等的官方项目文档。
关于 man
和 info
页面是旨在为已经知道如何使用工具的用户提供有用的提醒,还是为初次用户提供介绍,一直存在争议。无论哪种方式,man
和 info
页面都描述了工具以及如何使用它们,但很少涉及特定任务以及如何完成它们。正是出于这个原因,开发了 cheat
命令。
例如,假设您不记得如何解压 tar 文件。man
页面为您提供了所需的所有选项,但它需要您将这些信息转换为功能命令
tar -A [OPTIONS] ARCHIVE ARCHIVE
tar -c [-f ARCHIVE] [OPTIONS] [FILE...]
tar -d [-f ARCHIVE] [OPTIONS] [FILE...]
tar -t [-f ARCHIVE] [OPTIONS] [MEMBER...]
tar -r [-f ARCHIVE] [OPTIONS] [FILE...]
tar -u [-f ARCHIVE] [OPTIONS] [FILE...]
tar -x [-f ARCHIVE] [OPTIONS] [MEMBER...]
这正是某些用户需要的,但另一些用户会感到困惑。相比之下,tar 的速查表提供了完整的常用命令
$ cheat tar
# To extract an uncompressed archive:
tar -xvf /path/to/foo.tar
# To extract a .tar in specified Directory:
tar -xvf /path/to/foo.tar -C /path/to/destination/
# To create an uncompressed archive:
tar -cvf /path/to/foo.tar /path/to/foo/
# To extract a .tgz or .tar.gz archive:
tar -xzvf /path/to/foo.tgz
tar -xzvf /path/to/foo.tar.gz
[...]
这正是您在需要时所需要的。
Linux cheat 命令
cheat
命令是一个实用程序,用于搜索和显示您可能使用 Linux 命令执行的示例任务列表。与许多 Unix 命令一样,同一个概念有不同的实现,包括一个用 Go 编写的 和一个我帮助维护的仅用 100 行 Bash 编写的。
要安装 Go 版本,请下载最新版本并将其放在您的路径中的某个位置,例如 ~/.local/bin/
或 /usr/local/bin
。要安装 Bash 版本,请下载最新版本并运行 install-cheat.sh
脚本
$ sh ./install-cheat.sh
或者要配置安装,请使用 Autotools
$ aclocal ; autoconf
$ automake --add-missing ; autoreconf
$ ./configure --prefix=$HOME/.local
$ make
$ make install
获取适用于您的 Linux 终端的速查表
速查表只是包含常用命令的纯文本文件。速查表的主要集合可在 Github.com/cheat/cheatsheets 上找到。Go 版本的 cheat 在您首次运行命令时会为您下载速查表。如果您使用的是 Bash 版本的 cheat,则 --fetch
选项会为您下载速查表
$ cheat --fetch
与 man
页面一样,您的系统上可以有多个速查表集合。Go 版本的 cheat 使用 YAML 配置文件来定义每个集合的位置。Bash 版本在安装期间定义路径,默认情况下下载 Github.com/cheat/cheatsheets 集合以及 Opensource.com 自己的 Gitlab.com/opensource.com/cheatsheets 集合。
列出速查表
要列出系统上的速查表,请使用 --list
选项
$ cheat --list
7z
ab
acl
alias
ansi
ansible
ansible-galaxy
ansible-vault
apk
[...]
查看 Linux 速查表
查看速查表就像查看 man
或 info
页面一样容易。只需提供您需要帮助的命令名称
$ cheat alias
# To show a list of your current shell aliases:
alias
# To alias `ls -l` to `ll`:
alias ll='ls -l'
默认情况下,cheat
命令使用您环境的分页器。您的分页器通过 PAGER
环境变量 设置。您可以通过在运行 cheat
命令之前重新定义 PAGER
变量来临时覆盖它
$ PAGER=most cheat less
如果您只想cat 将速查表输出到您的终端而不使用分页器,则 Bash 版本有一个 --cat
选项以方便使用
$ cheat --cat less
这实际上不是作弊
cheat 系统直奔主题。您不必拼凑关于如何使用命令的线索。您只需遵循示例即可。当然,对于复杂的命令,它不是对实际文档进行彻底研究的捷径,但对于快速参考,它已经是最快的了。
您甚至可以通过将文件放在速查表集合之一中来创建自己的速查表。好消息!由于这些项目是开源的,您可以将您的个人速查表贡献给 GitHub 集合。还有更多好消息!当有新的 Opensource.com 速查表 发布时,从现在开始我们将包含一个纯文本版本,以便您可以将其添加到您的集合中。
该命令称为 cheat
,但正如任何 Linux 用户都会向您保证的那样,这实际上不是作弊。这是更智能地工作,开源的方式。
6 条评论