ヒアドキュメントとは?
コンピューターとコンピュータープログラミングに関連して、ヒアドキュメントは、特別な演算子を使用してプログラムに渡す入力を定義するために使用されるテキストのリストであるため、非常に長いコマンドまたはテキストのブロックをより簡単に渡すことができます。 「ヒアドキュメント」または「ヒアドック」は、ヒアドキュメントの動作方法とその内容の正確な実装がオペレーティングシステム、アプリケーション、またはプログラミング言語によって異なるため、より一般的な用語です。 名前が示すとおり、ヒアドキュメントは通常、個別のファイルではなく、スクリプト内のテキストのブロックであるか、何らかの方法でプログラムコマンドの最後に直接入力または挿入されます。 ヒアドキュメントの主な用途は、コマンドラインからスクリプトまたはバッチファイルを介してプログラムを実行する場合です。ヒアドキュメントでは、実行するプログラムの指示のリストまたは処理するプログラムの入力のいずれかを提供します。 多くの要因に応じて、ヒアドキュメントは単語の単純なリストにすることも、オペレーティングシステムやターゲットアプリケーションが解読できる複雑な変数やプログラミングコードを含めることもできます。
最も基本的な用語では、ヒアドキュメントは、タブ、キャリッジリターン、改行などの書式設定文字を含むテキストのリストです。 特にスクリプトやバッチファイルなどのラッパーファイルが使用される場合、コマンドラインから実行されているプログラムに引数を渡す便利な方法です。 ヒアドキュメントに含まれるテキストは、表示されているとおりにユーザーが入力したかのように、実行中のプログラムに送信されます。 これにより、単一のヒアドキュメントを何度も何度も使用してプログラムに同じ入力を与えることができるため、ユーザーがすべてを手動で再入力しなくても同じタスクを繰り返し実行できます。
ヒアドキュメントの仕組みの一例は、電子メールを送信する単純なコマンドラインのsendmailプログラムで見ることができます。 sendmailプログラムが実行されると、まずユーザーに宛先の電子メールアドレスの入力を求めます。 次に、電子メールの件名と、最後に電子メールのテキストを要求します。 コマンドラインから実行する場合、ユーザーは情報を入力し、リターンキーを押してプログラムが応答するのを待つことにより、各プロンプトに応答します。 ヒアドキュメントをラッパーファイルで使用する場合、リターンキーを含むすべての情報をsendmailプログラムに事前に入力して、ラッパーファイルに保存できます。 このようにして、sendmailプログラムがheredocで実行されると、入力が自動的にプログラムに送られ、ユーザーがそれ以上何もする必要なく電子メールが送信されます。