一、Shell脚本配置
二、文件(对文件的内容进行读写)
三、进程(多任务)
四、网络(数据共享)
五、HtmlDb(网页和数据库)
一、shell与c语言的区别
(1)shell编程:
解释型语言
边翻译边执行
擅长文件处理,操作系统管理
开发效率高 cp 1 2
执行效率低
移植性好
(2).c
编译型语言
先编译再执行
擅长数据计算和数据处理
开发效率低
执行效率高
移植性差
二、shell脚本编程
bash shell gnu
c shell csh
k shell ksh ash
...
shell脚本的本质就是一系列shell命令的集合
1.shell脚本编写流程:
1.vim XX.sh #!/bin/bash
2.编写脚本
3.chmod +x XX.sh
4. ./XX.sh
2.shell变量
1.环境变量: env
PATH:保存当前工作的默认路径
PWD:当前所在的工作路径
HOME:当前登录用户的家目录
...
main(int argc,char* argv[])
2.位置变量: ./3.sh /etc/passwd 123 456 内置变量
$0:脚本文件名
$1:传入脚本的第一个参数
$2:传入脚本的第二个参数
...
$9:
cp /etc/456 ./
$#:传入参数的个数
$?:上一句shell命令执行的结果
$$:当前shell的PID
a=123
3.shell脚本输入输出
read a
echo '$a'
a+b;
4."":打印字符串,遇到$变量则打印变量中的值
'':打印字符串,遇到$变量依然打印$变量
``:将中间的字符串按照命令打印
三、分支语句:
1.if语句
if 条件
then
语句
else
语句
fi
2. if
then
elif []
then
elif []
then
else
fi
3. if []
then
fi;
man test
-a and
-o or
test -eq 相等 test 10 -eq $i [ $i -eq 10 ] if( a == 10)
-ne 不相等
-gt 大于
-lt 小于
-ge 大于等于
-le 小于等于
[ $i ge 0 -a $i lt 59 ]
从终端接收一个成绩
0 - 59 打印不及格
60 - 69 及格
70 - 79 良好
80 - 89 中等
90 - 100 优秀
test
-b 块设备文件 test -b /dev/usb0
-c 字符设备文件
-d 目录文件
-f 普通文件
-L 链接文件
-S 套接字文件
-p 管道文件
2.case
case $num in
9)语句
;;
8|||)语句
;;
7)语句
;;
*)语句
;;
esac
四、循环语句
1. while [ 条件 ]
do
语句
...
done
2. for i in 循环范围
3. until 【条件为真时停止】