序章

チートはコマンドラインベースのPythonプログラムであり、システム管理者が役立つチートシートを表示および保存できるようにします。 オプション、引数、または一般的な使用法をユーザーに思い出させるために、選択したコマンドのプレーンテキストの例を取得します。 チートは、「頻繁に使用するが、覚えるほど頻繁ではないコマンド」に最適です。

シートは、複数のLinux/Unixシステム間でコピーできる小さなポータブルテキストファイルです。 これらは、他のコマンドラインプログラムと同じように呼び出されて表示されます。 一般的なプログラムのベースシートが提供されていますが、カスタムの新しいシートを追加することもできます。

前提条件

このチュートリアルに従うには、次のものが必要です。

  • 1つのUbuntu14.04ドロップレット

  • Ubuntu 14.04VPSチュートリアルでユーザーを追加および削除する方法に従って設定できるsudo非rootユーザー

ステップ1—チートのインストール

チートをインストールする前に、システム上ですべてが最新であることを確認する必要があります。

  1. sudo apt-get update && sudo apt-get upgrade

このステップのプロンプトに対してyと入力して確認します。

Cheatのインストールは、PythonパッケージマネージャーのPipを使用して行うのが最適なので、次にPipをインストールします。

  1. sudo apt-get install python-pip

Cheat自体は2つのPythonパッケージにのみ依存しており、どちらもPipのCheatパッケージに含まれています。 最後に、チートをインストールします。

  1. sudo pip install cheat

Cheatを正常にインストールすると、次の行が出力されます。

sudo pip install cheat output
Successfully installed cheat docopt pygments
Cleaning up...

-vオプションを指定して実行することで、チートがインストールされ、機能していることを確認できます。

  1. cheat -v

これにより、インストールしたチートのバージョンが出力されます。

cheat-v出力
cheat 2.1.10

ステップ2—テキストエディタを設定する

独自のチートシートを作成する前に、チートはデフォルトでシートの編集に使用するテキストエディタを知っている必要があります。 これを行うには、EDITORという環境変数を作成して設定する必要があります。 シェルおよび環境変数の詳細については、環境変数およびシェル変数の読み取りと設定方法チュートリアルを参照してください。

nanoはすでにUbuntuにインストールされており、一般的に習得しやすいため、以下のコマンドを使用して、nanoを優先テキストエディターとして設定します。 ただし、代わりにvim、emacs、またはお気に入りのテキストエディタを使用できます。

  1. export EDITOR="/usr/bin/nano"

次のように入力すると、これが成功したことを確認できます。

  1. printenv EDITOR

これにより、新しい$EDITOR環境変数の内容が出力されます。

printenvEDITOR出力
/usr/bin/nano

この変更を今後のすべてのシェルセッションで永続的かつ永続的にするには、.bashrcファイルに環境変数宣言を追加する必要があります。 これは、bashシェルセッションの開始時に実行されるいくつかのファイルの1つです。

このファイルを開いて編集します。

  1. nano ~/.bashrc

次に、同じエクスポートコマンドを追加します。

〜/ .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+XYENTERの順に押して、ファイルを保存して終了します。

ステップ3—チートのカスタマイズ(オプション)

このステップでは、構文の強調表示とコマンドラインのオートコンプリートを有効にして、チートをカスタマイズします。

カラーをサポートするターミナルエミュレータを使用する場合、trueとして定義されたCHEATCOLORSという名前のシェル環境変数をエクスポートすることにより、シートの構文の強調表示を有効にできます。

  1. export CHEATCOLORS=true

これで、虎の巻を取得するたびに、色付きの構文の強調表示でフォーマットされます。 この機能が気に入った場合は、.bashrcファイルにexportコマンドを追加することで、シェルセッション間で永続的かつ永続的にすることができます。

.bashrcファイルをもう一度開きます。

  1. nano ~/.bashrc

次に、EDITOR変数の下に新しいCHEATCOLORS変数を追加します。

〜/ .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/ディレクトリにスクリプトを配置する必要があります。 このディレクトリに移動します。

  1. cd /etc/bash_completion.d/

次に、必要なスクリプトをCheatのGitHubプロジェクトページからダウンロードします。

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

次に、現在のシェルにbashと入力して、変更を取得します。

  1. bash

チートのタブオートコンプリートが有効になりました。 cheatに続けてスペースを入力した場合、TABキーを2回押すと、コマンドのリストが表示されます。

チートタブのオートコンプリート出力
cheat 
7z           asciiart     chown        df           du          
grep         indent       jrnl         mkdir        netstat
. . .

ステップ4—チートを実行する

最も基本的な形式でチートを実行するには、他のコマンドと同じように呼び出し、その後に既存のチートシート名を付けます。

これは、tailコマンド(ファイルの最後の数行を出力する)に対して、Cheatに含まれているデフォルトのシートの1つを使用してこれを行う方法の例です。

  1. 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

他に利用できる既存のチートシートを確認するには、-lオプションを指定してチートを実行します。

  1. cheat -l

これにより、使用可能なすべてのシートとサーバー上のそれらの場所が一覧表示されます。

ステップ5—チートシートの作成と編集

チートに含まれている基本の暫定シートは便利で多様ですが、それらすべてに利用可能なすべてのシェルコマンドまたはプログラムが含まれているわけではありません。 チートから得られる本当のメリットは、独自のカスタムシートを追加することです。

たとえば、ネットワークプログラムpingのシートはありません。

  1. cheat ping
チートping出力
No cheatsheet found for ping

新しいシートを作成して追加する方法の例として役立つものを作成しましょう。 まず、コマンドラインでCheatを再度呼び出します。次に、-eと、作成するシートの名前を呼び出します。

  1. cheat -e ping

チートは、前に設定した$EDITOR変数を使用して、編集用の関連ファイルを作成して開きます。

この新しいシートの先頭に、コマンドが入力されたときにコマンドが何をするかを説明するコメント(#で示される)を付けて、便利なpingコマンドの例を追加します。 ファイルに入力できるそのようなコマンドの1つを次に示します。

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

以前と同じようにファイルを保存して終了します。 次に、cheat pingを再度実行して、新しいシートをテストします。

  1. cheat ping

今回は、追加したばかりのチートシートが表示されます。

チートping出力
# ping a host with a total count of 15 packets overall.    
ping -c 15 www.example.com

既存のシートを変更するには、-eオプションを再度使用できます。

  1. 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—チートシートの検索

チートには、-sオプションでトリガーされる検索機能が組み込まれています。 これにより、提供したテキストのすべての出現箇所が取得されます。 例えば:

  1. cheat -s packets

このコマンドは、「パケット」という用語とそれらが由来するシートを特徴とするすべての行を出力します。

cheat-sパケット出力
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が表示するものはすべてプレーンテキストであり、シェルの標準出力を介して送信されるため、任意のテキスト処理コマンド(grepなど)を使用できます。 あなたは読むことができます LinuxでGrepと正規表現を使用してテキストパターンを検索する詳細については、チュートリアルgrep

さらに、Git with GitHubなどのバージョン管理システムは、カスタムの虎の巻を一元的に保存するのに理想的であるため、リポジトリのクローンを作成することで、複数のプラットフォームで虎の巻を入手できます。 シートを追加、修正、またはチートで自分で作成した場合、シートはカスタムとして分類されます。

すべてのカスタムチートシートは、Linuxユーザーのホームディレクトリの.cheatという名前の隠しフォルダー内に保存されます。 この場所を見つけるには、cheat -dを実行します。これにより、2つのディレクトリが出力されます。1つはカスタムシートの場所で、もう1つはインストール時にCheatで取得するデフォルトのシートの場所です。

他のシステムのカスタムシートのライブラリにアクセスするには、この.cheatフォルダーをそれらにコピーするだけです。 虎の巻は小さなプレーンテキストファイルであるため、バージョン管理による追跡に最適です。 チートシートと構成ファイルにいつでもアクセスできるようにするための完全なソリューションについては、 LinuxVPSチュートリアルでGitを使用してユーザー構成ファイルを管理する方法をお読みください。