偷瓜的贼 发表于 2018-8-18 12:49:49

Shell 脚本 100 例《一》

  1. 编写 hello world 脚本
  #!/bin/bash
  echo "hello world"
  2. 通过位置变量创建 Linux 系统账户及密码
  #!/bin/bash
  #$1 是执行脚本的第一个参数,$2 是执行脚本的第二个参数
  useradd    "$!"
  echo "$2"|passwd‐‐stdin"$2"
  3. 每周 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
  4. 一键部署 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 phpphp‐mysql
  systemctl start httpd mariadb
  systemctl enable httpd mariadb
  5. 实时监控本机内存和硬盘剩余空间,剩余内存小于 500M、根分区剩余空间小于 1000M
  时,发送报警邮件给 root 管理员
  #!/bin/bash
  #Author:丁丁历险(Jacob)
  #提取根分区剩余空间
  disk_size=$(df / |awk '/\//{print $4}')
  #提取内存剩余空间
  mem_size=$(free |awk '/Mem/{print $4}')
  while :
  do
  #注意内存和磁盘提取的空间大小都是以 Kb 为单位
  if[$disk_size‐le512000‐a$mem_size‐le1024000];then
  mail‐sWarningroot
页: [1]
查看完整版本: Shell 脚本 100 例《一》