「作弊」:只需要知道這一個 Linux 命令就夠了
互聯網上有很多關於 Linux 和開源的信息,但是當你想要深入工作,通常需要一份便捷的文檔。早在 Linux 出現之前的 Unix 系統中,就有 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...]
這確實是一些用戶需要的,但是也使一些用戶感到困惑。相比之下,cheat
命令會羅列常用命令:
$ 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
命令是一個實用程序,可以用來搜索和顯示你想要使用的命令的使用示例。如大多數 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 中安裝 Cheat 程序
Cheat 只是包含常用命令的純文本文件。該程序可以從 github.com/cheat/cheatsheets 獲得。當你第一次運行命令時,Go 版本會自動為你下載支持列表。如果你使用 Bash 版本,用 --fetch
選項可以下載支持列表:
$ cheat --fetch
與 man
一樣,你的系統上可以有多個備忘單集合。 Go 版本的 cheat
使用 YAML 配置文件來定義每個集合的位置。Bash 版本在安裝過程中定義了路徑,默認下載 github.com/cheat/cheatsheets 集合以及 opensource.com 自己的 gitlab.com/opensource.com/cheatsheets 集合。
列出 Cheat 支持項目
使用 --list
選項即可查看 cheat
支持的項目:
$ cheat --list
7z
ab
acl
alias
ansi
ansible
ansible-galaxy
ansible-vault
apk
[...]
使用 Cheat 查看 Linux 命令
使用 cheat
查看命令如同使用 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
如果你只是想在沒有 PAGER
的情況下將 cheat
輸出 到終端里,在 Bash 版中有 --cat
選項可以使用:
$ cheat --cat less
這並不是作弊
cheat
系統抓住了要害,你不必拼湊有關如何使用命令的線索,你只需按照示例進行操作即可。當然,對於複雜的命令,它不是深入研究實際文檔的捷徑,但為了快速借用,它還是可以的。
甚至你可以通過將文件放入其中一個備忘單集合中,來創建自己的備忘單。好消息是,因為這些項目是開源的,所以你可以將你的個人備忘單貢獻給 GitHub 集合。另一個好消息是,當有新的 opensource.com 備忘單 版本發布時,我們將從現在開始包含純文本版本,以便你可以將其添加到你的收藏中。
該命令稱為 「 作弊 」,但正如任何 Linux 用戶都會向你保證的那樣,它實際上並不是作弊。它只是以開源的方式工作得更巧妙。
via: https://opensource.com/article/22/6/linux-cheat-command
作者:Seth Kenlon 選題:lkxed 譯者:Donkey 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive