天天看點

Shell Script——語句和變量

for循環

for ((exp1;exp2;exp3));do COMMANDS; done      

循環輸出0-9

for((i=0;i<10;i++));do echo $i done      

屬于一個範圍,則循環

for NAME [in WORDS ...];do COMMANDS; done      

如果name是zhangsan,lisi,wangwu中的一個,則滿足循環條件,輸出name

for name in zhangsan lisi wangwu; do echo $name; done      

while循環

文法結構

while COMMANDS; do COMMANDS; done      

應用示例

當software檔案存在時,則輸出ok,然後執行删除檔案的操作,總共輸出一個ok

while ls /software; do echo ok; rm -rf /software; done      

if語句

文法結構

if 存在條件
then
if 表達式或者檔案測試
then
if [表達式或檔案]
then
if [[表達式或檔案]]
then      
if COMMANDS; then COMMANDS;[elif COMMANDS; THEN COMMANDS;]...[else COMMANDS;] fi      

應用執行個體

(1)如果指令能執行,則輸出ok,否則輸出no ok

if ls /; then echo ok;else echo no ok;fi      

(2)在上條的基礎上,将指令運作結果發送到/dev/null目錄下

if ls / &> /dev/null; then echo ok; else echo no ok; fi      

(3)如果3大于8,則輸出ok, 否則輸出on ok

if [ 3 -gt 8];then echo ok; else echo no ok;fi      

變量

無需聲明一個變量

var=1234      

将varA中的值23換成ABC

varB=${varA/23/'ABC'}      
Shell Script——語句和變量

可以直接被使用

var=${MYTEST}      

多個字元值

echo $var      

一個值

echo '$var'      

¥var

echo "$var"      
thatVar=varA      
var =`ls -l`