Linux中國

「作弊」:只需要知道這一個 Linux 命令就夠了

互聯網上有很多關於 Linux 和開源的信息,但是當你想要深入工作,通常需要一份便捷的文檔。早在 Linux 出現之前的 Unix 系統中,就有 man(「manual」 的縮寫)和 info 命令了,二者都會顯示命令、配置文件、系統調用等的官方項目文檔。

關於 maninfo 頁面是對知曉如何使用工具的用戶的有用提醒,還是為初次使用的用戶提供介紹存在爭議。不管怎樣,maninfo 頁面介紹了工具以及如何使用該工具,很少涉及特定任務以及如何完成它們。正是出於這個原因,開發了 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 查看命令如同使用 maninfo 查看一樣簡單。只需要輸入你需要查詢的命令即可:

$ 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 備忘單 版本發布時,我們將從現在開始包含純文本版本,以便你可以將其添加到你的收藏中。

該命令稱為 「 作弊 cheat 」,但正如任何 Linux 用戶都會向你保證的那樣,它實際上並不是作弊。它只是以開源的方式工作得更巧妙。

via: https://opensource.com/article/22/6/linux-cheat-command

作者:Seth Kenlon 選題:lkxed 譯者:Donkey 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國