shell命令分为
1简单命令
2管道
3命令队列:通过&& || ;&连接执行的命令
4符合命令 以shell保留字、控制运算符开始,以shell保留字/控制运算符结束的shell编程结果,控制运算符包括 换行,|| && & ; ;; | |& ()
如何执行
chmod a+x a.sh
./a.sh
sh a.sh
source a.sh
特殊字符:
* 多个字符
?一个字符
: 表示空命令。返回值为0,在循环中等同于true
; 分行符,可不一条命令结束,也可以将多条命令写在一行中
$ 用于取值,根据其后面不同的结果,可以取变量或者表达式
$() 同``
$((数学表达式))
关于命令行参数的特殊变量
1. $#代表命令行参数的个数
2 $*代表全部的命令行参数,且全部作为一个单词 例如touch "$*" 会创建一个文件,名字为输入的参数
3$@代表所有的命令行参数,每个参数是独立的单词
数学运算,只支持整形运算
shell命令执行流程
1 以IFS将所输入字面量拆分为字段
2语法分析,将复合命令分为简单命令
3进行简单命令扩展
4搜索命令并执行
如何执行shell脚本:
chmod 777 filename先增加可执行的权限
bash filename.sh 执行该脚本
命令搜索的顺序:
1 搜索shell函数 2 搜索别名 3 搜索内部命令 4 搜索$PATH
条件结构
if conditionl
then
cmd1
elif condition2
then
cmd2
else
cmd
fi