shell脚本:包含多个执行命令的集合
编写流程:
1.vim XX.sh 首行需要 #!/bin/bash 开头
2.编写脚本
3.chmod +x XX.sh 加可执行权限
4. ./XX.sh 编译运行
shell变量
.环境变量: 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;
."":打印字符串,遇到$变量则打印变量中的值
'':打印字符串,遇到$变量依然打印$变量
``:将中间的字符串按照命令打印
在读变量时加” $“ ,
在进行赋值运算时,需要注意在”=“两边不能有空格;” * “ 为通配符,要进行乘法运算时,乘号为”\* “。
常用命令
-a and -o or test -eq 相等 test 10 -eq $i [ $i -eq 10 ] if( a == 10)
-ne 不相等 -gt 大于 -lt 小于 -ge 大于等于 -le 小于等于
test
-d 目录 -b 块设备 (test -b /dev/usb0) -c 字符设备 -l 软链接(快捷方式) -p 管道文件 -s 套接字文件
分支语句
1.if语句
(1)
if 条件
then
语句
else
语句
fi
(2)
if
then
elif []
then
elif []
then
else
fi
if后必有then,需要注意空格位置,test判断条件真假
cat 不进入程序编辑界面,直接查看程序内容。
2.case语句
case $num in
9)语句
;;
8|||)语句
;;
7)语句
;;
*)语句
;;
esac
;;相当于”break“
3.while语句
while [ 条件 ]
do
语句
...
done
for
4.until语句
until [ 条件 ]
do
语句
...
done
条件为假,循环;为真,循环结束。