BASH 编程语法
1 变量
1.1命名规则
命名只能使用英文字母,数字和下划线,首个字符不能以数字开头
中间不能有空格,可以使用下划线
不能使用标点符号
不能使用bash里的关键字
1.2 定义使用变量
yourname=”abc” echo $your_name 只读变量 a=’’123” readonly a 删除变量 unset variable_name(不能删除只读变量)
1.3 变量类型
字符串:yourname=”张三” 拼接字符串:greeting=”hello,”$yourname”!” 数组:array_name=(value0 value1 value2 value3) 取数组valuen=${array_name[n]} 单独赋值:array_name[0]=value0
1.4 实战
使用变量
a=”abc”
echo $abc
删除变量
unset a
数组初始化
my_array=(A B “C” D)
echo “第一个元素为:${my_array[0]}”
数组单个定义
my_array[1]=B
echo ”数组的元素为:${my_array[*]}”
echo “数组的元素为:${my_array[@]}”
2 控制语句
2.1 if语句
1 if condition 2 3 then 4 5 command1 6 7 command2 8 9 fi 10 11 if [ 2==2 ]; then echo “true”; else echo “false” ;fi 12 13 if [[ 2>1 ]]; then echo “true” ;else echo ”false”;fi
-gt 大于 –lt 小于
实战
比较两个变量的大小并输出不同的值
1 if [ Sa –eq $b ];then echo ”equal”; elif [ $a –lt $b ];then echo “small”; elif [ $a –gt $b ]; then echo “big”; fi
2.2 for循环
1 for var in item1 item2 …itemn 2 3 do 4 5 command1 6 7 command2 8 9 done 10 11 for loop in 1 2 3 4 5 12 13 do 14 15 echo “hello” 16 17 done
实战
循环读取文件内容并输出
1 for i in $(cat dir.txt);do echo $i;done 2 3 for i in $(cat dir.txt);do echo a$i;done
2.3 while循环
1 while condition 2 3 do 4 5 command 6 7 done
1 nt=1 2 3 while(( $int<=5 )) 4 5 do 6 7 echo $int 8 9 let “int++” 10 11 done
实战
循环读取文件内容并输出
while read line;do echo $line;done<dir.txt