Shellスクリプト——条件文
1604 ワード
条件テスト
1、ファイルテスト2、整数値比較3、文字列と論理テスト
·
if文:単一ブランチのif文二重ブランチのif文多分枝のif文
·
1、ファイルテスト
ファイルテストとは、指定されたパス名に基づいて、対応するファイルがディレクトリであるか、またはファイルが読み取り可能であるか、書き込み可能であるか、実行可能であるかなどを判断することである.
きほんけいしき
test [ ]
ファイルの一般的な操作オプションは次のとおりです.
オプション
説明
-d
ディレクトリ(Directory)であるかどうかをテストします.
-e
ディレクトリまたはファイルが存在するかどうかをテストします(Exist)
-f
ファイル(File)であるかどうかをテストします.
-r
現在のユーザーに読み取り権限があるかどうかをテストします(Read)
-w
現在のユーザーに書き込み権限があるかどうかをテストします(Write)
-x
実行可能権限が設定されているかどうかをテストします
以上の操作を実行すると、$?テストコマンドの戻り状態値を取得し、成立するか否かを判断することができる
実際の操作
書式1
test -d /etc/sysconfig ( /etc sysconfig )
echo $?( 0, )
フォーマット2
[ -d /etc/sysconfig ]
echo$( , 0( 1))
整数値比較
フォーマット:[整数1オペレータ整数2]
共通アクションオプション
1、-eq: (Equal)
2、-ne: (Not Equal)
3、-gt: (Greater Than)
4、-lt: (Lesser Than)
5、-le: (Lesser or Equal)
6、-ge: (Greater or Equal)
文字列の比較
1:[ 1 = 2 ]
[ 1 ! = 2 ]
2:[ -z ]
共通アクションオプション
1、=:
2、!=: , “!”
3、-z: ,
ロジックテスト
1:[ 1 ] [ 2 ] ...
2: 1 2 ...
共通アクションオプション
1、-a &&: ,“ ”
2、-o ||: ,“ ”
3、!: , “ ”
if文
たんぶんきこうぞう
if
then
fi
ダブルブランチこうぞう
if
then
1
then
2
fi
多分枝構造
if
then
1
elif 2
then
2
else
3
fi