一、工程管理器的简介与使用
1、 工程管理器:make
优点:自动编译管理
默认执行文件:makefile
2、 规则:1.创建目标体
2.创建目标体的依赖文件
3.命令,并以tab键开头
例: hello:hello.o
<tab>gcc –o hello hello.o
Hello.o:hello.c
gcc –c hello.c
.PHONY:clean //声明伪目标
clean: //伪目标
rm –f *.o
如何执行伪目标:make clean
定义变量:
例: obj=main.o func1.o…
hello:$(obj) //取值是用$()
gcc $(obj) –o hello
$^ 所有依赖文件
$@ 目标文件
$< 第一个依赖文件
# 注释
@ 取消命令回显
例: gcc $^ -o $@
shell脚本的简介与实例:
脚本—shell
Shell是一个命令行解释器
Shell的种类:Bourne shell(sh) Bourne Again shell(bash)
一、变量:
变量名=值例:a=’A’ 注意:变量赋值时,“=”两边都不能有空格
取变量 $变量名 echo(回显) echo $a
注意:如果变量名与其他合在一起时要用{}分开例:${num}nd
二、默认变量:
$# 传入脚本的命令行参数个数
$* 所有命令行的参数值
$0 命令本身
$1 第一个命令行参数
$2 第二个命令行参数
例: # ./shell a b
$0 $1 $2
三、Shell 中的循环:
1、if语句:
结构:If[expression]
then
#code block
else if[expression]
then
#code block
else if
…………
fi
fi
不管有多少个if else 最后都只需要两个fi 结束
2、 for循环:
for var in [list] val 是循环控制变量 list是var需要遍历的一个集合
do
#codeblock
Done
比较操作:
相同: -eq =
不同: -ne !=
大于: -gt >
小于: -lt <
大于等于: -ge
小于等于: -le
空: -z
非空: -n
-e 文件已存在
-f 文件是普通文件
-s 文件大小不为零
-d 文件是一个目录
-r 文件对当前用户可以读取
-w 文件对当前用户可以写入
-x 文件对当前用户可以执行
例: [ -r "$folder" ] && echo"Can read $folder“
[ -f "$folder" ] || echo "thisis not file"
3、 while / untill 循环:
while/untill [ ] while—[ ]里为真循环,untill相反
do
#
done
4、case开关语句:
case “$var” in
contidion1)
;;
contidion1)
;;
*)
defaultstatements;;
esac
例:
case “$Keypress" in
[A-Z]) echo "Uppercase letter";;
[a-z]) echo "Lowercase letter";;
[0-9]) echo "Digit";;
*) echo "Punctuation, whitespace, or other";;
esac