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