shell学习笔记(1)

变量名和等号之间不能有空格

在 Shell 中,用括号来表示数组,数组元素用"空格"符号分割开。定义数组的一般形式为:

数组名=(值1 2 ... n) 
例如:
array_name=(value0 value1 value2 value3)
或者:
array_name=(
value0
value1
value2
value3
)
或者
array_name[0]=value0
array_name[1]=value1
array_name[n]=valuen

读取数组:
${数组名[下标]}  如:value=${array_name[n]}

使用 @ 符号可以获取数组中的所有元素,如:
echo ${array_name[@]}


# 取得数组元素的个数
length=${#array_name[@]}
# 或者
length=${#array_name[*]}
# 取得数组单个元素的长度
lengthn=${#array_name[n]}


关系运算符只支持数字,不支持字符串,除非字符串的值是数字


和Java、PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法):

<?php
if (isset($_GET["q"])) {
    search(q);
}
else {
    // 不做任何事情
}

在sh/bash里可不能这么写,如果else分支没有语句执行,就不要写这个else。

 
 
 

 

posted @ 2018-08-08 16:32  骑着骆驼去流浪  阅读(79)  评论(0编辑  收藏  举报