Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> LinuxシステムFAQ >> Linuxシステムのシェルifステートメントの使用法

Linuxシステムのシェルifステートメントの使用法

  

1、文字列判定

 str1 = str2 2つの文字列が同じ内容の場合、長さはtrueですstr1!= str2文字列str1とstr2が等しくない場合True-n str1文字列の長さが0より大きい場合は真(文字列は空でない)-z str1文字列の長さが0の場合は真(空の文字列)str1文字列str1が空でない場合は真

2、Number判定

 int1 -eq int2 2つの数値がtrueに等しくないint1 -ne int2 2つの数値がtrueに等しくないint1 -gt int2 int1がint2より大きいtrue int1 -ge int2 int1がint2以上true int1 -lt int2 Int1がint2より小さいtrueが真int1 -le int2 int1がint2以下intが真

3ファイルの判断

 -rファイルが真と読める-wファイルが真と解釈できる-xファイルがユーザー実行可能真のファイルの真のfファイルは真のdファイルです。ディレクトリが真 -  cファイルが文字スペシャルファイルが真 -  bファイルがブロックスペシャルファイルが真 - ファイルサイズが0以外の場合は真ファイル-tファイルファイル記述子(デフォルトは1)を指定した場合端末

3の場合は真、複雑な論理判断

 -aおよび-oまたは!Non 

以下にいくつかの使用例を示します。

#!/bin /shmyPath =" /var /log /httpd /" myFile =" /var /log/httpd/access.log"#ここで-xパラメータは、$ myPathが存在するかどうかを決定し、[!-x" $の場合は実行可能なアクセス許可を持ちます。 myPath"]; thenmkdir" $ myPath" fi#ここでの-dパラメータは、$ myPathが存在するかどうかを決定します。[!-d" $ myPath"]; thenmkdir" $ myPath" fi#ここで、-fパラメータは$ myFileを評価します。 [!-f" $ myFile"]; thentouch" $ myFile" fi#他のパラメータも-nである場合、-nは、変数に値があるかどうかを判断するためのものです。[!-n" $ myVar"]; nenecho" $ myVarが空" e Xit 0fi#もし2つの変数が等しいなら、それが等しいかどうかを決定します。[" $ var1" ==" $ var2"]; thenecho '$ var1 eq $ var2'elseecho' $ var1 not eq $ var2'fiここで何かをするelifリストして、ここで他のことを実行するか、ここで他の操作を実行するfi EX1:#!/bin /shSYSTEM = `uname -s`#オペレーティングシステムの種類を入力し、私のローカルディレクトリはlinuxif [$ SYSTEM =" Linux"]です。 Linuxの場合は、linux文字列echo "Linux" elif [$ SYSTEM = "FreeBSD"]を出力し、次にecho "FreeBSD" elif [$ SYSTEM = "Solaris"]; thenecho "Solaris" elseecho "What?"と出力します。; fi #ifend 
>基本的に他のスクリプト言語と同じです。大きな違いはありません。しかし、それは注目に値します。 []内の条件付き判断。 > ======================================================== ======================== $ HOME /.bash_profilecd $ HOME /jnjzapp /sos_dx /echo -e '開始'。 /jn_card_dx.shwait#sqlplus $ DBSTR< 

1の場合、2と[]の間にスペースが必要で、3と]の間にもスペースが必要です。

Copyright © Windowsの知識 All Rights Reserved