如何在Ubuntu 14.04安装和使用命令行备忘单

Cheat是一个基于命令行的Python程序,使系统管理员能够查看和存储有用的小抄。据检索,以提醒选项,参数或一般用途的用户所选择的命令的纯文本的例子。Cheat是理想的“经常使用的命令,但不够频繁记住。”

介绍

Cheat是一个基于命令行的Python程序,允许系统管理员查看和存储有用的备忘单。 它检索所选命令的纯文本示例,以提醒用户选项,参数或常见用法。 欺骗是“你经常使用的命令,但不够频繁记住”的理想选择。

表格是可以在多个Linux / Unix系统上复制的小型可移植文本文件; 它们被称为和看起来像任何其他命令行程序。 提供常用程序的基本表,但您也可以添加自定义新表。

先决条件

要遵循本教程,您需要:

第1步 - 安装骗子

在安装骗子之前,我们需要确保系统上的所有内容都是最新的。

sudo apt-get update && sudo apt-get upgrade

通过输入确认y在此步骤中的任何提示。

安装骗子最好用Python包管理器Pip,所以安装Pip下一步。

sudo apt-get install python-pip

欺骗本身只取决于两个Python包,它们都很方便地包含在Pip的Cheat包中。 最后,安装骗子。

sudo pip install cheat

成功安装Cheat将输出这些行:

sudo pip安装欺骗输出
Successfully installed cheat docopt pygments
Cleaning up...

我们可以证实,Cheat已安装并以其运行它的工作-v选项。

cheat -v

这会输出我们安装的Cheat版本。

cheat -v输出
cheat 2.1.10

第2步 - 设置文本编辑器

在我们继续创建自己的备忘单之前,Cheat需要知道我们默认使用哪个文本编辑器来编辑工作表。 要做到这一点,我们必须创建和设置被称为一个环境变量EDITOR 有关外壳和环境变量的更多信息,你可以阅读如何读取和设置环境和shell变量教程。

因为nano已经安装在Ubuntu上,通常很容易学习,我们将它设置为我们首选的文本编辑器与下面的命令。 但是,您可以使用vim,emacs或您最喜欢的文本编辑器。

export EDITOR="/usr/bin/nano"

我们可以通过键入以下内容来确认此操作是否成功:

printenv EDITOR

这将输出新的$EDITOR环境变量的内容:

printenv EDITOR输出
/usr/bin/nano

为了使这一变化在所有未来的会话外壳持续性和永久性,必须将环境变量声明添加到您.bashrc文件。 这是在bash shell会话开始时运行的几个文件之一。

打开此文件进行编辑:

nano ~/.bashrc

然后添加相同的export命令:

〜/ .bashrc
. . .
# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

export EDITOR="/usr/bin/nano"

# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
. . .

保存并按下退出文件CTRL+X ,然后Y随后ENTER

第3步 - 自定义Cheat(可选)

在这一步中,我们将通过启用语法突出显示和命令行自动完成来自定义欺骗。

当使用具有色彩支持的终端模拟器,您可以启用语法通过导出一个名为shell环境变量高亮你的床单CHEATCOLORS定义为真:

export CHEATCOLORS=true

现在,无论何时检索备忘单,都将使用彩色语法高亮显示格式。 如果你喜欢这个功能,您可以通过添加export命令你让它穿过外壳会话持续性和永久性.bashrc文件。

打开.bashrc再次文件:

nano ~/.bashrc

然后添加新的CHEATCOLORS以下变量EDITOR变量:

〜/ .bashrc
. . .
# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

export EDITOR="/usr/bin/nano"
export CHEATCOLORS=true

# don't put duplicate lines or lines starting with space in the history
. . .

保存并关闭文件。

接下来,使命令行自动完成,我们需要把一个脚本在/etc/bash_completion.d/目录。 切换到此目录。

cd /etc/bash_completion.d/

然后从Cheat的GitHub项目页面下载我们需要的脚本。

sudo wget https://raw.githubusercontent.com/chrisallenlane/cheat/master/cheat/autocompletion/cheat.bash

现在进入bash到当前shell拿起变化。

bash

现在启用欺骗的标签自动完成。 如果你输入cheat后面加一个空格,按TAB键两次会给你命令的列表。

欺骗标签自动完成输出
cheat 
7z           asciiart     chown        df           du          
grep         indent       jrnl         mkdir        netstat
. . .

第4步 - 运行Cheat

要以最基本的形式运行骗子,你可以像任何其他命令一样调用它,然后是现有的备忘单名称。

下面是如何做到这一点与来自包括与Cheat的默认表中的一个,对于一个例子tail命令(输出文件的最后几行)。

cheat tail

然后,您将看到此输出:

欺骗尾输出
# To show the last 10 lines of file
tail file

# To show the last N lines of file
tail -n N file

# To show the last lines of file starting with the Nth
tail -n +N file

# To show the last N bytes of file
tail -c N file

# To show the last 10 lines of file and to wait for file to grow
tail -f file

看看其他其他现有的备忘单提供给我们,其运行Cheat-l选项。

cheat -l

这将列出所有可用工作表及其在服务器上的位置。

第5步 - 创建和编辑Cheat页

虽然包括Cheat的基本临时表是有用和多样的,但它们并不包括我们可用的每个shell命令或程序。 我们可以从Cheat获得的真正好处是添加了我们自己的定制表。

例如,不存在片材的联网程序ping

cheat ping
欺骗输出
No cheatsheet found for ping

让我们举一个例子来说明如何创建和添加一个新工作表。 首先,再次调用该命令行上金手指,此时接着-e ,我们正在使其成为片材的名称。

cheat -e ping

Cheat将创建并打开相关的文件,使用编辑$EDITOR我们之前设置变量。

添加一个有用的ping命令为例,这个新的工作表,完整的注释(以表示年初# )解释时输入命令做什么。 这里有一个这样的命令,你可以在文件中输入:

〜/ .cheat / ping
# ping a host with a total count of 15 packets overall.    
ping -c 15 www.example.com

像以前一样保存并退出文件。 接下来,我们通过运行测试新的工作表cheat ping一次。

cheat ping

这一次,我们将看到我们刚才添加的备忘单。

欺骗输出
# ping a host with a total count of 15 packets overall.    
ping -c 15 www.example.com

要修改现有的表,我们可以使用-e再次选项。

cheat -e ping 

ping页面现在已打开,我们可以添加更多示例或内容。 例如,我们可以添加以下内容:

〜/ .cheat / ping
# ping a host with a total count of 15 packets overall.    
ping -c 15 www.example.com

# ping a host with a total count of 15 packets overall, one every .5 seconds (faster ping). 
ping -c 15 -i .5 www.example.com

第6步 - 搜索Cheat页

Cheat与触发的内置搜索功能-s选项。 这将提取任何和所有出现的文本你提供它。 例如:

cheat -s packets

此命令将输出所有具有术语“包”的行和它们源自的表。

欺骗-s数据包utput
nmap:
  # --min-rate=X => min X packets / sec

ping:
  # ping a host with a total count of 15 packets overall.    
  # ping a host with a total count of 15 packets overall, one every .5 seconds (faster ping). 

route:
  # To add a default  route (which will be used if no other route matches).  All packets using this route will be gatewayed through "mango-gw". The device which will actually be used for that route depends on how we can reach "mango-gw" - the static route to "mango-gw" will have to be set up before.

tcpdump:
  # and other packets being transmitted or received over a network. (cf Wikipedia).

. . .

结论

因为一切Cheat显示器是纯文本,并通过shell的标准输出定向,我们可以使用任何文本处理命令(如grep吧)。 你可以阅读使用grep和正则表达式搜索在Linux文本模式教程的详细信息grep

此外,版本控制系统(如GitHub的Git)是集中存储定制备忘单的理想选择,因此您可以通过克隆存储库在多个平台上获取它们。 如果你添加到它,修正它,或者创建它自己通过Cheat表被归类为习俗

所有自定义快捷表存储在你的Linux用户的主目录,命名为一个隐藏的文件夹内.cheat 您可以通过运行查到这个地点cheat -d ,将输出两个目录:第一是你的自定义纸张的位置,第二个是你在安装时有Cheat得到默认工作表的位置。

要访问自定义纸张库在其他系统上,你只需要复制这个.cheat文件夹到他们。 Cheat表是小的纯文本文件,因此这使它们完美的跟踪版本控制。 对于一个完整的解决方案,让您的备忘单,并在任何时候都可以访问配置文件,您可以阅读如何使用的Git来管理在Linux VPS用户配置文件教程。