参考博文https://www.xuliangwei.com/
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误Linux Systemctl 命令由来及详解 参考博文https://blog.csdn.net/small_queen/article/details/115531530
systemctl是 Systemd 的主命令,用于管理系统。 shell学习:(监控系统状态) 先取行->取值->对比->判断->输出->修改 sh -n xxx.sh 检查语法显示磁盘分区 lsblk 显示磁盘挂载 df -h 查看内存使⽤ free -m
查看系统负载 uptime
退出程序
if [ ] ;then fi
if [ 你有房 ];then
我就嫁给你
elif [ 你有⻋ ];then
我就嫁给你
elif [ 你有钱 ];then
我就嫁给你
else
再⻅
fi
ping -c 3 -i 0.2 -W 3 $1 &> /dev/null 这条语句中各个参数的意义为: -c表示的是ping的次数(linux系统下并不会像windows一样ping四次后停止),后面的3为ping三次后终止。 -i表示的是两次ping访问之间的时间间隔,0.2参数表示的是间隔0.2s -W表示的是定义等待超时的时间,3表示的是超过三秒钟就定义为ping不通 $1为输入的参数 &> /dev/null表示的是用完的参数自动存入一个没有回收功能的垃圾箱 原文链接:https://blog.csdn.net/weixin_41407439/article/details/907081152.流程控制语句case
case 变量 in
模式 1)
命令序列 1
break;;
模式 2)
命令序列 2;;
模式 3)
命令序列 3 ;;
*)
⽆匹配后命令序列
esac
#! /usr/bin/bash
read -p "please intput your want number: " number
while true
do
case $number in
1) echo "you elect number 1"
break
;;
2) echo "you elect number 2"
break
;;
3) echo "you elect number 1"
break
;;
*) echo "you number error ,please elect 0-3 !!"
read -p "please intput your want number: " number
esac
done
#!/usr/bin/bash
caidan(){
cat <<-EOF
===================
h 显示命令帮助
f 显示磁盘分区
d 显示磁盘挂载
m 查看内存使⽤
u 查看系统负载
q 退出程序
=====================
EOF
}
3、for循环
for 变量名 in [ 取值列表 ]
do
循环体
done
for 循环批量创建⽤户
#!/usr/bin/bash
read -p "please input u want usrname /password/nubmer " name pass num
if [[ ! $num =~ ^[0-9]+$ ]];then
echo "error please input number again "
fi
cat <<-EOF
you want name : $name
you want password :$pass
you want number : $num
EOF
read -p "Are you sure create the usr[y|n] " ready
case $ready in
y|yes|Y|YES)
for i in $(seq $num)
do
usrname=$name$i
id $usrname &>/dev/null
if [ $? -ne 0 ];then
useradd $usrname &&
echo "$pass"|passwd --stdin $usrname &>/dev/null
echo "$usrname is ok !"
fi
done
;;
N|n|NO|no|On)
exit 1
;;
*)
read -p "Are you sure create the usr[y|n] " ready
esac
~
4、While循环语句
//当条件测试成⽴(条件测试为真),执⾏循环体
while 条件测试
do
循环体
done
1.使⽤ while 创建⽤户 #!/usr/bin/bash while read user do id $user &>/dev/null if [ $? -eq 0 ];then echo "useradd $user is already exists" else useradd $user &>/dev/null echo "useradd $user is Created." fi done/dev/null if [ $? -eq 0 ];then echo "useradd $u is already exists" else useradd $u && echo "$p"|passwd --stdin $u &>/dev/null echo "useradd $u is Created Passwd Is Ok." fi done



