一、shell 是linux内核与用户应用的沟通接口,相当于下面的ui部分
二、shell有很多种,常用的是bash;
SH,CSH,KSH,BASH
,...........
三、shell脚本就是shell命令的集合
四、变量赋值中不能有空格,如:
#!/bin/bash #################### # # # 1+2+3+...+100 # # # #################### sum=0 for ((i=1; i<=100; i++)) do sum=$(expr $sum + $i); done echo $sum
result=$(expr $1 \* $2) echo "$1 x $2 = $result"
五、shell的内部命令与外部命令
六、变量赋值示例:
a=1 ;//中间不能有空格
echo $a
a=hello //无需带双引号
echo $a
array[0]=1 //直接给数据赋值
array[1]=abc;
echo ${array[0]};//打印数组第一个值
echo ${array[@]};//打印所有数组值
七、env命令查看环境变量
八、echo的-e参数,能够解释转义字符
echo -e "abc\tedf" ; echo -e "abc\nedf" echo -e "abc\vedf" ;//垂直制表符
注意 -e后面的内容要用双引号括起来
九、printf命令
printf <格式化字符串> 变量值
printf "%s\tabc\n" $a
printf "%20s\tabc\n" $a
printf "%-20s\tabc\n" $a ;//左对齐20位
十、/dev/null 黑洞文件
十一、/dev/tty 代表终端设备
read a < /dev/tty ;//将终端设备输入的值赋给变量a echo $a
十二、脚本参数
#!/bin/bash echo $0 ;//脚本命令名称 echo $1 ;//脚本第一个参数 echo $# ;//脚本参数总个数
十三、脚本跟踪
#!/bin/bash set -x a=1 echo $a set +x a=123 echo $a