コメントは、プログラミングまたはスクリプト言語の不可欠な部分です。 Bashも例外ではありません。
他のプログラミング言語と同様に、bashスクリプトのコメントは、コードをより理解しやすくするために使用されます。コメントを使用して、スクリプトのデバッグ中にコードの一部をスキップすることもできます。
このbashのヒントでは、シェルスクリプトにコメントを追加する3つの方法を紹介します。
- 1行のコメント
- インラインコメント
- 複数行のコメント
bashスクリプトの1行のコメント
ハッシュ/ポンドキー#で始まる行は、bashではコメントとして扱われます。このルールの唯一の例外は#です!これはシバンであり、スクリプトの処理に使用するシェルを示すために使用されます。
サンプルのbashスクリプトで見てみましょう:
#!/bin/bash
#Define variables here
message="Hello"
day=$(date +%A)
#Print some messages
echo "$message $USER! It's $day today. Enjoy your day!"
echo "Goodbye for now!"
ご覧のとおり、上記の例には2つの1行のコメントがあります。
bashスクリプトのインラインコメント
bashスクリプトにインラインコメントを追加することもできます。行を#で始める代わりに、コード行の最後に#で始まるコメントを追加します。
次に例を示します:
#!/bin/bash
message="Hello"
day=$(date +%A) #This will print only the day, not entire date and time
echo "$message $USER! It's $day today. Enjoy your day!"
echo "Goodbye for now!"
可変日が宣言されている行にインラインコメントを追加しました。これは、+%Aを指定したdateコマンドは現在の日のみを表示することを示しています。
混乱を避けるために他のコメントを削除しました。
bashスクリプトの複数行コメント
bashでの複数行またはブロックコメントは直接できません。複数の単一行コメントを使用できますが、特にコードのブロック全体のコメントを解除する必要がある場合は、あまり便利ではないことを私は知っています。
ありがたいことに、ヒアドキュメントを使用してbashの複数の行にコメントする回避策があります。コマンドに複数行の入力を提供するためのリダイレクトです。コマンドにリダイレクトされていない場合は、ブロックコメントを追加するために使用できます。
#!/bin/bash
<<Block_comment
message="Hello"
day=$(date +%A) #This will print only the day, not entire date and time
echo "$message $USER! It's $day today. Enjoy your day!"
Block_comment
echo "Goodbye for now!"
上記のスクリプトを実行すると、.Goodbye for now!’のみが出力されます。 <
コードをデバッグしていて、コードのブロックをコメントアウトしたい場合は、それを使用できます。それ以外の場合は、シェルの組み込み機能ではないため、メインスクリプトでの使用は避けてください。
シェルスクリプトにコメントを書く際のこの簡単なヒントが気に入っていただければ幸いです。ご質問やご提案はいつでも大歓迎です。