Linux ターミナルで基本的な bash 構文のリファレンスまたはチートシートを表示するにはどうすればいいですか?

Linux ターミナルで基本的な bash 構文のリファレンスまたはチートシートを表示するにはどうすればいいですか?

if ステートメント、空の変数や存在しないファイルのチェックなどを含むちょっとした bash スクリプトを実行する必要があるたびに、簡単な bash マニュアルやガイドを Google で検索している自分に気づきます。

多くの場合、これらは長すぎて複雑すぎるため、手元にある質問にすぐに答えることができません。

そこで、基本的な bash 構文 (if 文、空の変数や存在しないファイルのチェックなど) を簡潔かつ分かりやすく説明したコマンドまたはマニュアル ページがあるはずだと考えていました。そのコマンドが見つからないだけだと思います (man bash はそうではないようです)。

それはどこで見つけられますか?

答え1

  • man bash標準的な Bash リファレンスです。
  • help helpBash 組み込みのヘルプhelpと、 などの他の Bash 組み込みに関する短いヘルプ メッセージを表示する方法について説明しますhelp for
  • グレッグのウィキは、Bash のほぼすべての側面に関する、要点を押さえた簡潔な、時には面白い参考資料を見つけるのに最適な場所です。
  • 構文を素早く調べたい場合は、バージョン管理.bash_historysedあまりにも多くのコマンド、さまざまなパラメータ構文、回線ノイズなどがありawk、すべてを覚えるのは不可能なので、「よく整理された」個人的な参照があると便利です。タグ見上げる。

答え2

があるのでネット上にはそのようなものがたくさんある、ここにあなたへの提案があります。私はこれをあらゆることに使用しています。

ディレクトリを作成します$HOME/notes。サブフォルダを追加します。bashがない場合は$HOME/bin作成し、任意の方法でパスに追加します(例えば、~/.bashrc)。次に、そこに簡単なスクリプトを記述しますcmdref.sh

#!/bin/bash

if [ -z "$CMREF_DIR" ]; then
        CMREF_DIR="$HOME/notes"
fi

cat "$CMREF_DIR/${1}/${2}.txt"

便宜上、シンボリックリンクを作成します。ソースを編集しても、エディターがサフィックスによってファイルタイプを認識できるよう ln -s ~/bin/cmdref.sh ~/bin/cmdrefに、この方法を使用します。cmdref.sh

のさまざまなファイルに何でもコピーして貼り付けます。たとえば、、などの~/notes/bashファイルを作成できます。個人的な使用のみを目的としている限り、著作権を侵害することはありません。arrays.txtloops.txt

これで、コマンドラインからこれを使用できるようになりましたcmdref bash arrays。例: チートシートがコンソールに出力されます。ファイルは(適切なサフィックスを使用すると、エディターやファイル ブラウザーなどで便利です)追加されるため.txt、使用しないでください(スクリプトが行うことは、パスを変換してサフィックスを追加することだけです)。cmdref bash arrays.txtcmdref.sh

答え3

man bashは、bash 構文のあらゆる側面をカバーします。たとえばif statements、 、の場合string is zeronon-existent files、 を検索する (/キーを押して次のように入力する) だけですCONDITIONAL EXPRESSIONS

関連情報