寂寞大萝卜 发表于 2018-8-18 11:14:31

shell 脚本 99例

一.编写 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 32OK
  cecho 33Error
  cecho 34Warning
四.一键部署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 035 /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
页: [1]
查看完整版本: shell 脚本 99例