一.编写 hello world 脚本

#!/bin/bash
echo "hello world"

二.通过位置变量创建Linux系统账号及密码

#!/bin/bash
#$1 是执行脚本的第一个参数,$2是执行脚本的第二个参数

useradd "$!"

echo "$2" | passwd --stdin "$2"

三. 3种字体颜色

#!/bin/bash
cecho(){
echo -e "\033[$1m$2\033[0m"
}

cecho 32 OK
cecho 33 Error
cecho 34 Warning

四.一键部署LNMP (RPM包版本)

#!/bin/bash
#使用yum安装部署 LNMP,需要提前配置好 yum源,否则改脚本会失败
#本脚本使用centos7.2或RHEL7.2
yum -y install httpd
yum -y install mariadb mariadb-devel mariadb-server
yum -y install php php-mysql

systemctl start httpd mariadb
systemctl enable httpd mariadb

五.每周5使用tar命令备份/var/log下的所有日志文件

#vim /root/logbak.sh

#编写备份脚本,备份后的文件名包含日期标签,防止后面的备份将前面的备份数据覆盖

#注意date命令需要使用反引号括起来,反引号在键盘键上面

tar -czf log-'date +%Y%m%d'.tar.gz /var/log

crontab -e #编写计划任务,执行备份脚本

00 03 5 /root/logbak.sh

六.实时监控本机内存的硬盘剩余空间,剩余内存小于500M,根分区剩余小于1000M时,发送报警邮件给root管理员

#!/bin/bash
#提取根分区剩余空间
disk_size=$(df / | awk '/\//{print $4}‘)
#提取内存剩余空间
mem_size=$(free |awk '/Mem/{print $4}')
while:
do
#注意内存和磁盘提取的空间大小都是以kb为单位
if [ $disk_size -le 512000 -a $mem_size -le 1024000 ];then
mail -s Waring root <Insufficient resources,资源不足
EOF
fi
done

七.脚本生成一个100以内的随机数,提示用户猜数字,根据用户的输入,提示用户猜对了,

猜小了或猜大了,直至用户猜对脚本结束。

#!/bin/bash
#RANDOM为系统自带的系统变量,值为0-232767的随机数
#使用取余算法讲随机数变为1-100的随机数
num=$[RANDOM%100+1]

#使用read提示用户猜数字
#使用if判断用户猜数字的大小关系:-eq(等于),-ne(不等于),-gt(大于等于),-lt(
小于),-le(小于等于)
while:
do
read -p "计算机生成了一个1-100的随机数,你猜:“ cai
if [ $cai -eq $num ];then
echo "恭喜,才对了”
elif [ $cai -gt $num ];then
echo "0ops,你猜大了“
else
echo "0ops,猜小了”

fi
done

===================================

从1相加到100

#!/bin/bash
j=0
for ((i=1;i<=100;i++));do
j=$(($i+$j))
done
echo $j

==================================== www.pangdanet.com

编写脚本 103.40.101.0、24 整个网段中哪些主机处于开机状态,哪些主机处于关机状态(for版本)

#!/bin/bash
for i in {1..254}
do
ping -c2 -i0.3 -w1 103.40.101.$i &>/dev/null
if [ $? -eq 0 ] ; then
echo "103.40.101.$i is up"
else
echo "103.40.101.$i is down"
fi
done