bash shell 只支持一维数组,不支持多维数组,语法格式以下:
array_name=(values1 values2 ... values)
读取数组以下:shell
${array_name[index]} echo "数组的元素为:"${array_name[*]} # 显示全部的元素,下同 echo "数组的元素为:"${array_name[@]} echo "数组的长度为:" ${#array_name[@]} #获取数组的长度
expr 是一款表达式计算工具,使用它能完成表达式的求值操做。数组
val=`expr 2 + 2` echo "2+2=${val}" #注意:表达式和运算符之间要有空格,否则会原样输出 echo `expr 2 \* 2` echo `expr 2 / 2`
Shell 中的 test 命令用于检查某个条件是否成立,它能够进行数值,字符和文件三个方面的测试
-eq 等于则为真
-ne 不等于则为真
-gt 大于则为真
-ge 大于等于则为真
-lt 小于则为真
-le 小于等于则为真bash
num1=100 num2=200 if test ${num1} -eq ${num2} then #do code else #do others fi
= 等于则为真
!= 不相等则为真
-z 字符串 字符串的长度为0则为真
-n 字符串 字符串的长度不为0则为真函数
str1="my name is rola" str2="my name is ming" if test ${str1} = ${str2} then #do code else #do others fi
-e 文件名 若是文件存在则为真
-r 文件名 若是文件存在且可读为真
-w 文件名 若是文件存在且可写为真
-x 文件名 若是文件存在且可执行为真
-s 文件名 若是文件存在且至少有一个字符则为真
-d 文件名 若是文件存在且为目录则为真
-f 文件名 若是文件存在且为普通文件则为真
-c 文件名 若是文件存在且为字符型特殊文件则为真
-b 文件名 若是文件存在且为块特殊文件则为真工具
if test -e ./bash then #do code else #do others fi
if测试
if condition then #code fi ######################################################## if condition then #code else #code fi ######################################################## if condition then #code elif condition then #code else #code fi
for 循环code
for var in list do #code done ################################################## while condition do #code done
case进程
case 值 in model 1) # code ;; model 2) # code ;; esac #demo read num case $num in 1) echo '你选择了 1' ;; 2) echo '你选择了 2' ;; 3) echo '你选择了 3' ;; 4) echo '你选择了 4' ;; *) echo '没有选择 ' ;; esac # 在 case 中,用 **;;** 表示 break
[function] funname [()] { action; [return] } # [] 为可选,若是没有return,默认以最后一条语句做为返回值
文件引入或者包含字符串
. filename #注意前面有个点号 source filename