目录
shell脚本编写
Linux操作系统中shell为命令解释器 作用将命令字转换为二进制数据 01010 is--》1010010
cat /etc/shells
可列出当前操作系统的命令解释器有哪些
echo $SHELL 查看变量内容
基本语法结构
$NUM 使用变量
NUM = 10 变量赋值
NUM = /bin/bash 变量赋值可以为路径或其他值(shell编辑器里无数据类型)
&> /dev/null 将命令显示输出内容追加到空文件内。
shell语句大小判断
if选择判断语法结构
if ((3<4)) if语法结构 双分支结构 结构中 关键字为(固定格式)
then echo "yes" if 条件
else then 条件成立后的句子
echo "no" else 当条件不成立的时候
fi 不成立的句子
fi
随机数取值 expr $RANDOM % 通过该方法 取出100以内的随机整数
多分支判断语句
语句结构
if 条件1
then 子语句
elif 条件2
then 子语句
elif 条件3
then 子语句
else
子语句
fi
循环语句的应用
while 循环语句
while 条件
do
循环语句
done
for循环语句 一般结构
for ((i=0;i<3;i++))
do
循环语句
done
指定列表次数结构
for i in 取值列表
do
i 每一次取值为一次循环
done
1.利用循环语句实现ip地址的循环
示例
ping命令内网主机测试脚本编写
二次利用
env命令查看系统预定义变量
全局变量
配置路径:/etc/profile /etc/bashrc
vim /etc/profile 开机以后必然运行的脚本
设定全局变量
每个用户家目录中的配置文件信息和 变量的关系
修改 预定义变量的句子
使nginx 会用命令直接启动 配置 /etc/profile
源码包命令的路径优化
case语句
设计一个脚本
./case.sh redhat
输出
centos
./case.sh centos
输出
redhat
./case.sh
不输入 瞎输入
函数运用
格式
nginx启动脚本示例
# !/bin/bash
Start(){
if `ss -antpl|grep :80 &> /dev/null`
then echo "80端口被使用"
else
echo "正在启动nginx..."
/usr/local/nginx/sbin/nginx
fi
}
case $1 in
start)
Start #Start函数的调用
;;
esac
nginx控制脚本(功能:start | stop | status | restart)
示例