【shell script】if文の書き方
2022.08.29
みなさん、こんにちは
エンジニアの高橋です。
本日はシェルスクリプトのif文の書き方について書いていこうと思います。
▼ if文とは
プログラムを実行する際に、if文を記載していれば、それに当たる条件式を評価し、結果が真(true、条件が満たされる)であれば直後のブロックを、偽(false、満たされない)であれば実行しない書き方です。
▼ if文の記載方法
前回のブログの記事でお伝えしていた引数の数が指定の数送られてきているか確認するif文を描いてみましょう。
(https://fujiball.co.jp/recruitment/blog/72/)
shell.sh
##############################
#! /bin/bash
if [ $# -eq 2 ];
then
echo "引数の数は[2]です。"
else
echo "引数の数は[2]以外です。"
fi
##############################
▼ 実行
作ったシェルスクリプトを実行してみましょう。
##############################
$ sh shell.sh one two
引数の数は[2]です。
$ sh shell.sh one
引数の数は[2]以外です。
##############################
▼ 気をつけるべき点①
「[」もコマンドとなり、引数を受け取って「]」までの間を評価するものなので、条件式は必ずスペースを開けて記載して下さい。
▼ 気をつけるべき点②
型が文字列の場合は「==」や「!=」などで評価できるのですが、型が数値の場合はオプションとして比較演算子を記載してください。
[ 数値1 -eq 数値2 ] ・・・ ==
[ 数値1 -ne 数値2 ] ・・・ !=、<>
[ 数値1 -gt 数値2 ] ・・・ >
[ 数値1 -ge 数値2 ] ・・・ >=
[ 数値1 -lt 数値2 ] ・・・ <
[ 数値1 -le 数値2 ] ・・・ <=
--------------------------------------------------
社員を募集しております!
type
開発エンジニア*前職給与保証*リモート可*ブランクOK*案件還元率80%以上*月給35万円~*年休128日
社員のゲーム実況チャンネル
$fugaのゲーム実況
社員を募集しております!
type
開発エンジニア*前職給与保証*リモート可*ブランクOK*案件還元率80%以上*月給35万円~*年休128日
社員のゲーム実況チャンネル
$fugaのゲーム実況