shell script 程序化脚本
注意事项:
1.命令执行从左到右,从上到下
2.#是批注不会执行
3.执行的脚本必须具备可读可执行的权限
4.绝对路径执行命令
5.相对路径执行命令
- 1.1 第一个脚本编写执行
#!/bin/bash 这一行是特别重要,不是注释,其他都是注释,声明脚本执行的shell名称,echo $SHELL可以展示当前用户登陆后使用什么shell
#Program:
This program shows"hellow world" in your screen.
#History:
#2019/04/09 HDD first relase
echo -e “hellow world \a \n”
exit 0 命令让程序终端,并回传一个数值给系统,就是0
- 1.2 简单练习
遇到一个问题,sh 执行脚本可以,但是用./执行显示command not found ,排查是因为设置脚本执行的shell 不对,少l 反斜挎 - 1.3 善用判断式
1.利用test命令得测试功能
2.利用判断符号[]
脚本6 执行存在问题,只判断一个
3.shell script 默认变量($0,$1…)
$#:代表后接的参数“个数“
4.条件判断式
if…then
用法如下:
if 【条件判断】;then
当条件判断成立,可以进行的命令 工作内容;
fi (将if写反过来,就成为fi,结束的意思)
备注:
&&代表and || 代表or
多重判断
if【条件判断一】;then
当条件判断一成立的时候,可以进行该命令
elif【条件判断二】;then
当条件判断二成立的时候,可以执行的命令
else
当条件一二都不满足的时候,可以进行的命令
fi
多学习一个命令
netstat(查询目前主机打开的网络服务端口)
netstat -tuln 获取目前主机有启动的服务
2.利用case …esac 判断
case
变
量
名
称
i
n
<
=
=
关
键
字
为
c
a
s
e
,
还
有
变
量
前
有
变量名称 in <==关键字为case ,还有变量前有
变量名称in<==关键字为case,还有变量前有
“第一个变量内容”)
程序段
;;
“第二个变量内容”)
程序段
;;
*)
exit 1
;;
esac (case 反过来写)
3.利用函数功能
function fname() {
程序断
}
4.循环
while [判断是]
do ==》do 是循环的开始
程序段落
done ==>done 是循环的结束
还有一种是
until [条件判断式]
do
程序段落
done
for var in con1 con2 con3…
do
程序段
done
for …do … done 的数值处理
for ((初始值;限制值;执行步长))
do
程序段
done