ifステートメントについて覚えておきたい事

基本的な構文

if condition
then
    statements
[elif condition
    then statements...]
[else 
 statements]
fi

ifは条件のexitステータスを使用して評価を行う

  • 従って通常終了を現すexit 0が真の値
  • 何らかの異常を示すexit 1~が偽と同様に評価される

ビルトインコマンドをシェルスクリプト内で使用するには

builtin cd "$@" # buildのあとにコマンド名を続けて表記する。コマンドがビルトインでない場合は単にエラーが変える。

function内でexitステータスを保存してreturnで返すには

function something()
{
  some_command
  es=$? # 特殊変数$?にexit statusは入るのでコマンドの実行直後に変数に入れる。他のコマンドを実行すると$?は上書きされるので。
  return es # returnはexitステータス処理結果ではなくを返すものとして使用する。
}  

returnの引数を省くと最後のコマンドのexitステータスが返る。これはreturnを省いた場合に同じ。

if文をandやorで複数のステートメントの判定を行う

if statement1 && statement2
if statement1 || statement2