Bashで‘if’ステートメントを使用して終了ステータスを確認する方法
Bashスクリプトにおいて、コマンドやスクリプトの終了ステータスは、スクリプトや特定のコマンドの成功または失敗を決定する重要な情報です。コマンドやスクリプトの終了ステータスは数値であり、それが成功したか、エラーが発生したかを示します。この記事では、Bashでif文を使用して終了ステータスをチェックする方法について考察します。
Bashでの「if」文を使用して終了ステータスを確認する
「if」文と「$?」変数を使用することで、コマンドやスクリプトが正常に実行されたかどうかを判断できます。これは、最近実行されたコマンドの終了ステータスを保持します。終了ステータスを判断するための「if」文の構文は次のとおりです:
if [ $? -eq 0 ]
then
echo "execution sucessfull"
else
echo "execution failed"
fi'-eq' 演算子は、終了ステータスがゼロかどうかを確認するために使用されます。これは、コマンドまたはスクリプトが正常に完了したことを示します。
終了ステータスがゼロでない場合、'else'ブロックが実行され、コマンドが失敗したことを示すメッセージが表示されます。コマンドの終了ステータスを確認するために'if'文を使用する方法を示すシンプルな例を以下に示します:
#!bin/bash
ls /false-directory
if [ $? -eq 0 ]
then
echo "execution suncessfull"
else
echo "execution failed"
fi存在しないディレクトリの内容をリストするために、私は「ls」コマンドを使用していますが、そのディレクトリは存在しないため、「ls」コマンドは失敗し、その終了ステータスはゼロ以外になります。その後、「if」文は「$?」変数を使用して終了ステータスを確認し、コマンドが失敗したことを示すメッセージを表示します。
結論
コマンドやスクリプトの終了ステータスを確認することは、Bashスクリプトの重要な部分です。終了ステータスを確認するための簡単で効果的な方法は、‘if’文と‘$?’変数を使用することです。この技術を習得することで、コマンドやスクリプトの成功または失敗を簡単に判断でき、終了ステータスに基づいて適切なアクションを取ることができます。
