邏輯控制
條件if
分支case、select
迴圈for、while、until
break和continue
有生之年也許你只需要用到if、for、while
if結構
if [ condition ];then...;fi
if [ condition ];then...;else...;fi
if [ condition ];then...;elif...;fi
簡單的邏輯可以使用&& ||去替代
[ -f file ] && echo file exist || echo file not exist 條件成立後執行&&後語句,不成立執行||後語句
條件可以用命令返回值代替
a=/g/yaya/tmp/1執行結果如下:.txt
if [ -f "$a"
];then
echo
file
exist;
else
echo
file
not exist;
fi[ -f "
$a" ] && echo
file exist || echo
file not exist
case結構
用於條件太多的情況。每乙個條件最後使用兩個分號結尾,不可缺少。
case $var in
p1)...;;
p2)...;;
...pn)...;;
*)...;;
esac
select
select var in var_list;do...;done;
選單選擇,一般與case結構一起用
crtl+d退出
for迴圈
for(( c1;c2;c3 ));
do...;
done
for(( i=0;i<10;i++ ));do echo $i;done
for(( i=0;i<10;i++ ));do執行結果如下:echo $i;done
for 遍歷迴圈
用於遞迴陣列,還可以遞迴以空格隔開的字串序列。或者是某個命令的返回值。
for f in $array[*];
do...
done
ss="aa bb cc dd";for x in $ss;do echo $x;done 預設空格進行拆解
while迴圈
while設定條件
一行行的讀取檔案內容
while可以替代until迴圈
退出控制
return函式返回
exit指令碼程序退出
break退出當前迴圈
continue跳過當前迴圈,進入下一次迴圈。
shell邏輯控制語句之case
case分支判斷結構 語法 case 變數名稱 in value1 statement statement value2 statement statement value3 statement statement statement statement esac 編寫指令碼,判斷使用者輸入的字串 ...
shell中的邏輯,流程控制語句
for 迴圈語句 用於定義迴圈執行的動作 for迴圈框架 for name 變數 in 變數name的值 dodone 注意 for迴圈定義的變數只能其作用於迴圈內部 幾種定義迴圈變數 計數器 的方式 for num in 1 2 3 定義num範圍1,2,3 for num in 定義num範圍從...
邏輯控制初學
一 順序結構 順序結構比較簡單.像我們之前寫過的 就是順序結構的,按照 書寫的順序一行一行執行.如果調整 的書寫順序,則執行順序也發生變化 system.out.println aaa system.out.println bbb system.out.println ccc 執行結果 aaabbb...