一.编写 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 <
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