shell练习题2

2019-11-08  本文已影响0人  吃可爱长大鸭

1.PHP-fpm 启动脚本

#!/bin/bash
[ -f /etc/init.d/functions ] && . /etc/init.d/functions

sou=/opt/php-fpm.txt

if [ -f $sou ];then
    echo "此脚本正在使用"
    exit
fi

if [ ! $USER == "root" -a ! $UID -eq 0 ];then
    echo "没有权限可以使用"
    exit
fi
if [ $# -ne  1 ];then 
    echo "请输入一个参数"
    echo "{start|stop|restart|status}"
    exit
fi
touch $sou  &>/dev/null
pid=/var/run/php-fpm/php-fpm.pid

case $1 in
    start)
        if [ -f $pid ];then
           action "服务正在运行。。。" /bin/true
       else
           systemctl start php-fpm
           if [ $? -eq 0 ];then
               action "服务启动成功!" /bin/true
           else
               action "服务启动失败!" /bin/false
           fi
       fi
       ;;
    stop)
        if [ -f $pid  ];then
         systemctl stop php-fpm
            if [ $? -eq 0 ];then
                action "服务停止成功!" /bin/true
            else
                action "服务停止失败!" /bin/false
            fi
        else
            echo "服务没有运行。。。"
        fi
        ;;
    reload)
        if [  -f $pid ];then
        systemctl reload php-fpm
           if [ $? -eq 0 ];then
               action "服务平滑启动成功!" /bin/true
           else
               action "服务平滑启动失败!" /bin/false
           fi
       else
           echo "服务平滑没有运行。。。"
       fi
       ;;
    status)
        if [ -f $pid ];then
            action "服务运行状态!" /bin/true
        else
            action "服务关闭状态!" /bin/false
        fi
        ;;
    restart)
        if [ -f $pid ];then 
           systemctl  stop php-fpm
           if [ $? -eq 0 ];then
               action "服务停止成功!" /bin/true
           else
               action "服务停止失败!" /bin/false
           fi
           sleep 3
           systemctl start php-fpm
               if [ $? -eq 0 ];then
                  action "服务启动成功!" /bin/true
               else
                  action "服务启动失败!" /bin/false
               fi
        else
            action "php-fpm  服务没有在运行。。。"  /bin/true
            systemctl start php-fpm
               if [ $? -eq 0 ];then
                  action "服务启动成功!" /bin/true
               else
                  action "服务启动失败!" /bin/false
               fi
        fi
        ;;
    *)
        echo "请你选择{start|stop|restart|status}"
esac
rm -rf $sou

2.根据学生录入的成绩判断,学生的优劣

  0-60  补考
  60-80 合格
  80-100 优秀
思路:
     两个条件判断
     考虑整数
     不能回车为空
#!/bin/bash
read -p "请输入[0-100]:" ll
if [[ ! $ll =~ ^[0-9]+$ || $ll -gt 100  ]];then
    echo "你输入的分数不对!"
fi
if [ $i -gt 80  ];then
        echo "优秀!"
elif [ $i -ge 60  ];then
        echo "合格!"
else                                                                                              
        echo "补考!"
fi

3.写一个创建用户的脚本,需要输入创建用户的前缀,比如oldboy,以及后缀。比如123。

提示用户输入要创建的用户的前缀,且必须是字母

提示用户输入要创建的用户的后缀。且必须是数字

将前缀和后缀进行结合

在判断用户是否存在,存在则提示

不存在,则创建
#!/bin/bash
read -p "请输入创建用户的前缀(字母):" qz

if [ -z $qz ];then
    echo "不支持回车!"
    exit
fi
if [[ ! $qz =~ ^[a-Z]+$ ]];then
    echo "请输入字母!"
    exit
fi
read -p  "请输入创建用户的后缀(整数):" hz

if [ -z $hz ];then
    echo "不支持回车!"
    exit
fi
if [[ ! $hz =~ ^[0-9]+$ ]];then
    echo "请输入一个整数!"
    exit
fi

User=${qz}${hz}

id  $User  &>/dev/null

if [ $? -eq 0 ];then
    echo "用户${User}已经存在"
else
    useradd  $User  &>/dev/null
    if [ $? -eq 0 ];then
        echo "用户$User 创建成功!"
    else
        echo "用户$User 创建失败!"
        exit
    fi
fi

4.使用root用户清空/var/log/messages日志,并每次执行保留最近100行

1.root用户执行  $USER    $UID  

2.判断文件是否存在  

3.保留最近100行文件
#!/bin/bash
#1.判断是否是root用户
if [ ! $USER == "root"  -a  ! $UID -eq 0 ];then
    echo "该用户$USER 对此脚本$0 没有执行权限!"
    exit
fi
File=/var/log/messages
if [ ! -f  $File ];then
    echo "$FIle 文件不存在!"
    exit
fi
if [ ! -s $File ];then
    echo "文件存在,但是文件中没有任何内容!"
    exit
fi
#2.清空并保留最近100行内容

tail -100  $File >${File}.bak  && cat  ${File}.bak >$File 

if [ $? -eq 0 ];then
    echo "日志清空成功!并保留了最近100行内容!"
    rm -f  ${File}.bak
else
    echo "清空操作失败!"
fi
#!/bin/bash
#1.判断是否是root用户
if [ $USER == "root"  -a  $UID -eq 0 ];then
    File=/var/log/messages
    if [ -f  $File ];then
        if [ -s $File ];then
            tail -100  $File >${File}.bak  && cat  ${File}.bak >$File 
            if [ $? -eq 0 ];then
                echo "日志清空成功!并保留了最近100行内容!"
                rm -f  ${File}.bak
            else
                echo "清空操作失败!"
            fi
        else
            echo "文件存在,但是文件中没有任何内容!"
            exit
        fi
    else
        echo "$FIle 文件不存在!"
        exit
    fi
else
    echo "该用户$USER 对此脚本$0 没有执行权限!"
    exit

5.判断某个服务是否正常启动

位置变量  $1  
判断用户是否执行脚本时加了位置变量
是否运行
端口是否存在
进程是否存在

systemctl  status  $1  

netstat  -lntup  |grep  $1

ps  aux|grep  $1  |grep  -v   grep   
#!/bin/bash
if [ $# -ne 1 ];then
    echo "请输入一个位置变量。"
    echo "Usage: $0 {sshd|nginx|php-fpm|rsync|mariadb}"
    exit
fi
Server=$1
if [ $Server == "mariadb" ];then
    Server=mysqld
fi
#1.判断服务是否运行
systemctl  status  $Server  &>/dev/null

Rc=$?

if [ $Rc -eq 0 ];then
    echo "服务$Server 正在运行....."
elif [ $Rc -eq 4 ];then
    echo "没有$Server 这个服务!"
    exit
elif [ $Rc -eq 3 ];then
    echo "服务$Server 没有运行..."
else
    echo "你输入的服务名称不正确!"
fi

#2.判断端口号是否存在
netstat  -lntup  |grep  $Server  &>/dev/null

if  [ $? -eq 0 ];then
    echo  "服务$Server 端口号存在!"
else
    echo  "服务$Server 端口号不存在!"
fi

#3.判断进程是否存在

ps  aux |grep  $Server  | grep -v  grep  |grep -v  'pts'  &>/dev/null

if  [ $? -eq 0 ];then
    echo  "服务$Server 进程存在!"
else
    echo  "服务$Server 进程不存在!"
fi

6.系统管理菜单

[root@web /scripts/day06]# cat  case-1.sh
#!/bin/bash
menu() {

cat<<EOF
####################
0.帮助信息
1.系统版本
2.系统虚拟平台
3.系统内核版本
4.Eth0-IP地址
5.Eth1-IP地址
6.外网IP地址
7.内存使用情况
8.磁盘使用情况
9.退出
#####################
EOF
}
menu
while true
do
read  -p  "请输入你要查看的选项,输入对应的数字:"  num

if [[ ! $num =~ ^[0-9]$ ]];then
    echo "请按照提示输入对应的数字。"
    exit
fi
case $num  in
    0)
        menu
        ;;
    1)
         cat /etc/redhat-release |awk  '{print $1,$(NF-1)}'
         ;;
    2)
        hostnamectl   |awk '/Virtua/{print $NF}'
        ;;
    3)
        hostnamectl   |awk '/Kernel/{print $NF}'
        ;;
    4)
        ifconfig eth0  |awk  'NR==2{print $2}'
        ;;
    5)
        ifconfig eth1  |awk  'NR==2{print $2}'
        ;;
    6)
        curl -s  icanhazip.com
        ;;
    7)
        free -m
        ;;
    8)
        df -h
        ;;
    9)
        exit
        ;;
    *)
        echo "请按照要求输入。"
        exit
esac
done

7.实现多级菜单功能

思路:函数 循环

主菜单  
cat<<EOF  
1.安装Nginx
2.安装PHP
3.退出
EOF

子菜单
cat<<EOF 
#####################
1.安装Nginx-1.12
2.安装Nginx-1.14
3.安装Nginx-1.16
4.返回主菜单
#####################
EOF  

子菜单
cat<<EOF
#####################
1.安装PHP-5.5
2.安装PHP-5.6
3.安装PHP-7.1
4.返回主菜单 
#####################
EOF 
#!/bin/bash
master_menu() {
cat<<EOF  
################
1.安装Nginx
2.安装PHP
3.退出
################
EOF
}
Nginx_menu() {
cat<<EOF 
#####################
1.安装Nginx-1.12
2.安装Nginx-1.14
3.安装Nginx-1.16
4.返回主菜单
#####################
EOF
}
Php_menu() {
cat<<EOF
#####################
1.安装PHP-5.5
2.安装PHP-5.6
3.安装PHP-7.1
4.返回主菜单 
#####################
EOF
}
master_menu
trap "" HUP INT TSTP #禁止输入Ctrl+c
while true
do
    read -p  "请输入你要安装的服务:" Server
    case $Server in
        1)
            clear
            Nginx_menu
            while true
            do
            read -p "请输入你要安装的Nginx版本:" Version
            case $Version in
                1)
                    echo "你选择是安装Nginx-1.12版本....."
                    echo "正在安装......."
                    sleep 2
                    echo "Nginx-1.12版本安装完成。"
                    ;;
                2)
                    echo "你选择是安装Nginx-1.14版本....."
                    echo "正在安装......."
                    sleep 2
                    echo "Nginx-1.14版本安装完成。"
                    ;;

                3)
                    echo "你选择是安装Nginx-1.16版本....."
                    echo "正在安装......."
                    sleep 2
                    echo "Nginx-1.16版本安装完成。"  
                    ;;
                4)
                    clear
                    master_menu
                    break 
            esac
        done
            ;;
        2)
            clear
            Php_menu
            while true
            do
            read -p "请输入你要安装的PHP版本:" install
            case $install  in
                1)
                    echo "你选择是安装PHP-5.5版本....."
                    echo "正在安装......."
                    sleep 2
                    echo "安装PHP-5.5版本完成....."
                    ;;
                2)
                    echo "你选择是安装PHP-5.6版本....."
                    echo "正在安装......."
                    sleep 2
                    echo "安装PHP-5.6版本完成....."
                    ;;
                3)
                    echo "你选择是安装PHP-7.1版本....."
                    echo "正在安装......."
                    sleep 2
                    echo "安装PHP-7.1版本完成....."
                    ;;
                4)
                    clear
                    master_menu
                    break
            esac
            done
            ;;
        3)
            echo "你选择退出。"
            exit
            ;;
        *)
            echo "请按照要求输入。"            
    esac
done

8.创建用户,首先输入用户的前缀,判断前缀是否空,是否为字母,输入创建用户的数量,提示用户要创建的用户是什么,是否确认创建,判断数量是否是正整数,是否为空,是否确认创建 Y N .创建随机密码,判断是否是root用户。

[root@web ~]# echo  $RANDOM |md5sum  |cut -c 1-10
34e20f3dc6
-l  指定密码的位数
-c  小写字母
-C  大写字母
-d   数字
-s   特殊符号
[root@web ~]# mkpasswd -l 24 -c 6 -C 6 -d 6 -s 6
3~'4AWi2E*oMXb9#dJ=87v+e

tee    重定向,将输出结果重定向到文件中并输出到屏幕上面

-a  追加
#!/bin/bash
if [ $USER == "root"  -a  $UID -eq 0 ];then
    echo  "当前用户为超级管理员,有创建用户的权限!"
else
    echo  "该用户$USER 对此脚本$0 没有执行权限!"
    exit
fi
read -p "请输入你要创建用户的前缀(必须是字母):"  Qz
if [ -z $Qz ];then
    echo "不支持回车!请按照要求输入字母!"
    exit
fi
if [[ $Qz =~ ^[a-Z]+$ ]];then
    echo "你输入的前缀符合要求,继续创建用户!"
else
    echo "你输入的前缀不符合要求,游戏结束!"
    exit
fi
read -p "请输入你要创建用户的数量(必须是正整数):" num
if [ -z $num ];then
    echo "不支持回车!请按照要求输入字母!"
    exit
fi
if [[ $num =~ ^[0-9]+$ ]];then
    echo "你输入的数字符合要求,继续创建用户!"
else
    echo "你输入的数字不符合要求!无法创建用户!"
    exit
fi
read -p "你要创建的用户为:${Qz}1..${Qz}${num},是否确认创建[Yes|No]:" Qr
if [ -z $Qr ];then
    echo "不支持回车!请按照要求输入[Yes|No]!"
    exit
fi
case $Qr  in
    Y|Yes|yes|y)
        echo "你选择了创建用户。"
        for i in  $(seq $num )
        do
            User=${Qz}$i
            id $User  &>/dev/null
            if [ $? -eq 0 ];then
                echo "用户已经存在!"
            else
                useradd $User  &>/dev/null  
                if [ $? -eq 0 ];then
                    echo "用户$User 创建成功!"
                    Pass=$(mkpasswd -l 24 -c 6 -C 6 -d 6 -s 6)
                    echo $Pass |passwd --stdin $User  &>/dev/null
                    if [ $? -eq 0 ];then
                        echo "用户$User 密码设置成功!密码信息存放在/root/${Qz}_pass.txt。"
                        echo -e  "User: $User \t\t Password: $Pass " >>/root/${Qz}_pass.txt
                    else
                        echo "用户$User 密码设置失败!"
                        continue
                    fi
                else
                    echo "用户$User 创建失败!"
                    continue
                fi
            fi
        done
        chmod 400 /root/${Qz}_pass.txt  &>/dev/null
        ;;
    N|No|no|n)
        echo "你选择不创建用户!"
        exit
        ;;
    *)
        echo "你输入的不符合要求,请按照要求输入[Yes|No]"        
esac

9.删除用户高级版脚本

#!/bin/bash
if [ $USER == "root"  -a  $UID -eq 0 ];then
    echo "该用户$USER 有删除用户的权利!"
else
    echo "该用户$USER 没有删除用户的权利!"
    exit
fi
read -p "请输入你要删除用户的前缀(必须是字母):" Qz

if [ -z  $Qz ];then
    echo "不支持回车键,请按照要求输入。"
    exit
fi
if [[ $Qz =~ ^[a-Z]+$ ]];then
    echo "你输入的前缀符合要求!继续删除用户!"
else
    echo "你输入的前缀不符合要求!"
    exit
fi
read  -p  "请输入你要删除用户的数量(必须是正整数):" num
if [ -z  $num ];then
    echo "不支持回车键,请按照要求输入。"
    exit
fi
if [[ $num =~ ^[0-9]+$ ]];then
    echo "你输入的数字符合要求!"
else
    echo "你输入的数字不符合要求!"
    exit
fi
read -p  "你要删除的用户是${Qz}1..${Qz}${num},是否确认删除[Yes|No]:" Qr
if [ -z  $Qr ];then
    echo "不支持回车键,请按照要求输入。"
    exit
fi
if [[ $Qr =~ ^[a-Z]+$ ]];then
    echo "你选择删除用户!继续删除"
else
    echo "你输入的不符合要求!请按照要求输入[Yes|No]"
    exit
fi
case $Qr in
    Y|Yes|y|yes)
        for i in $(seq $num)
        do
            User=${Qz}$i
            id $User &>/dev/null 
            if [ $? -eq 0 ];then
                userdel -r  $User &>/dev/null
                if [ $? -eq 0 ];then
                    echo "$User 用户删除成功!"
                else
                    echo "$User 用户删除失败!"
                fi
            else
                echo "用户$User 不存在!"
            fi
        done
        ;;
    N|No|n|no)
        echo "你选择不删除用户!你很谨慎!"
        exit
        ;;
    *)
        echo "请不要乱输!"
        exit
esac

10.编写一个上课随机点名脚本。

for   有个名单  循环多少次   先统计名单人员的数量       随机数      取余  
#!/bin/bash
Stu_count=$(wc -l student.txt|awk '{print $1}')
for i in {1..20}
do
    Random=$(echo $(( $RANDOM % $Stu_count + 1 )))
    sed -n  "${Random}p"  student.txt
    sleep  0.2
done
stu_name=$(sed -n  "${Random}p"  student.txt)
echo -e  "天玄子:\033[32m $stu_name \033[0m"

#严谨版的学生点名脚本
#!/bin/bash
Stu_file=student.txt
if [ ! -f $Stu_file ];then
    echo  "学生人员名单文件$Stu_file 不存在!"
    exit
fi
if [ ! -s $Stu_file ];then
    echo "学生人员名单文件存在,但是是空的!"
    exit
fi
grep -E '^[ \t]*$' $Stu_file  &>/dev/null
if [ $? -eq 0 ];then
    echo "学生人员名单中存在空格,取值会出现空行的情况!"
    exit
fi
Stu_count=$(wc -l $Stu_file |awk '{print $1}')
for i in {1..20}
do
    Random=$(echo $(( $RANDOM % $Stu_count + 1 )))
    sed -n  "${Random}p"  student.txt
    sleep  0.2
done
stu_name=$(sed -n  "${Random}p"  $Stu_file)
echo -e  "天玄子:\033[32m $stu_name \033[0m"

11.使用for循环实现数据库的分库分表备份。

#备份库
[root@web /scripts/day07]# mysqldump  -uroot -p123  -B  mysql  >mysql.sql

#备份表
[root@web /scripts/day07]# mysqldump  -uroot -p123  wordpress wp_users   >wordpress_wp_users.sql

#取出所有要备份的数据库
[root@web /scripts/day07]# mysql -uroot -p123  -e "show databases;" |sed 1d | grep -v '.*schema'
mysql
test
wordpress
world

#取出wordpress数据库中的所有表
[root@web /scripts/day07]# mysql -uroot -p123 -e "use wordpress;show tables;" |sed 1d
wp_commentmeta
wp_comments
wp_links
wp_options
wp_postmeta
wp_posts
wp_term_relationships
wp_term_taxonomy
wp_termmeta
wp_terms
wp_usermeta
wp_users
#!/bin/bash
Db_User=root
Db_Pass=123
Bak_Dir=/backup/mysql
Date=$(date +%F)
Db_list=$(mysql -u$Db_User -p$Db_Pass  -e "show databases;" |sed 1d | grep -v '.*schema')
[  -d $Bak_Dir ] || mkdir -p $Bak_Dir
for Database in $Db_list
do
    mysqldump -u$Db_User -p$Db_Pass --single-transaction -B $Database  >$Bak_Dir/${Date}_${Database}.sql 
    if [ $? -eq 0 ];then
        echo "数据库$Database 备份成功....."
        Table_list=$(mysql -u$Db_User -p$Db_Pass -e "use $Database;show tables;" |sed 1d)
        for Tables in $Table_list
        do
            mysqldump -u$Db_User -p$Db_Pass --single-transaction $Database $Tables >$Bak_Dir/${Date}_${Database}_${Tables}.sql
            if [  $? -eq 0 ];then
                echo "数据库$Database 下的表$Tables 备份成功......"
            else
                echo "数据库$Database 下的表$Tables 备份失败......"
            fi
        done
    else
        echo "数据库$Database 备份失败....."
    fi
done

12.批量创建用户脚本,需要用户输入创建的用户数量(必须是整数),以及需要用户输入创建的前缀(不能为空),次脚本仅root可以执行,其他用户无法执行,创建用户的密码是随机密码,并保存到一个指定的文件中,例如:前缀qzg,个数10,代表创建qzg1~qzg10,总共10个用户.

#!/bin/bash
read -p "请输入要创建的用户:" mun 
if [ -z $mun  ];then
    echo "前缀不支持空"
    exit
fi
read -p "请输入要创建的个数:" gs
if [[ ! $gs =~ ^[0-9]+$ ]];then
    echo "你输入的不是一个整数"
    exit
fi
echo "用户$mun  个数$gs"
read -p "你要创建以上用户么[Y|N]: " i
case $i in
    y|Y|yes|YES)
        for i in `seq 1 $gs`
        do
            user=${mun}${i}
            id $user &>/dev/null
            rc=$?
            if [ $rc -eq 0  ];then
                echo  "用户已经存在!" 
            else
                useradd $user
                if [ $? -eq 0 ];then
                   echo "用户创建成功!"
               else
                   echo  "用户创建失败!" 
               fi
            fi
        done
        ;;
    n|N|NO|no)
        echo "你确定这么创建。。。" 
        exit
        ;;
    *)
        echo "你输入的不对请重新输入" 
        exit
esac

13.批量探测主机存活状态172.16.1.{1..254},扫描次主机的22端口,是否存活

#!/bin/bash
a=1
while [ $a -le 254  ]
do
    {
        
    ping -c1 -W1 10.0.0.$a &>/dev/null
    if [ $? -eq 0 ];then 
        echo "10.0.0.$a ip是通的"
        nmap -p22 10.0.0.$a |grep 22 &>/dev/null
        if [ $? -eq 0 ];then
           Port=$(nmap -p22 10.0.0.$a |grep  22|awk '{print $2}')
           if [ $Port == "open" ];then
               echo "10.0.0.$a sshd的端口是开放的"
           else
               echo "10.0.0.$a sshd的端口是不开放的"                                              
            fi
        fi
    fi
      } &
done

14.统计Nginx日志中每个IP的访问量有多少,日志如下:

192.168.56.1 - - [21/May/2018:20:44:06 -0400] "GET /index.html HTTP/1.0" 404 169 "-" "ApacheBench/2.3" "-"/code/index.html

awk '{print $1}' nginx.txt |sort|uniq -c|sort -nr|head 

15.编写一个脚本,计算100以内所有能被3整除数字的和

#!/bin/bash

sum=0
for i in `seq 1 100`
do
    aa=$(expr $i % 3)
    if [ $aa -eq 0 ];then
       sum=$[$sum+$i]
    fi
done
echo "100以内能被3整除的数和为 $sum"

16.写一个Shell脚本通过curl命令返回的状态码来判定所访问的网站是否正常,比如当前状态码200,才算正常

#!/bin/bash

read -p "请出入一个你想curl的网站域名: " yu
if [ -z $yu ];then
   echo "请不要输入一个空的域名"
   exit
fi
curl -I -s $yu &>/dev/null
if [ $? -eq 0 ];then
   echo "域名真实存在"
   aa=$(curl -I -s $yu|awk 'NR==1 {print $2 }')
   if [ $aa -eq 200 ];then
      echo "$yu 这个网站正常"
   else
      echo "$yu 这个网站不正常"
   fi
else
   echo "域名不存在"
fi

17.抓阄题目学生外出企业项目实践机会来了,但是,名额有限,队员限3人,因此需要挑选学生,因此需要一个抓阄的程序:

要求:
(1)执行脚本后,想去的同学输入英文名字全拼,产生随机数01-99之间的数字,数字越大就去参加项目实践,前面已经抓到的数字,下次不能在出现相同数字。
(2) 第一个输入名字后,屏幕输出信息,并将名字和数字记录到文件里,程序不能退出继续等待别的学生输入。

while true                                                                                                          
do
    sj=`echo $(($RANDOM%99+1))`
    cf=`grep -w "$sj" name.txt|wc -l`
    if [ $cf -eq 1 ];then
        continue
    else
        read -p "请输入您的英文名[gouzi]: " name
        if [ -z $name ];then
            continue
        else
            if [ $name == "exit" ];then
                break
            fi
        fi
        echo -e "$name \t $sj " | tee -a name.txt
    fi
done
cat name.txt |sort -nrk2|head -n3

18.系统初始化

#!/bin/bash
[ -f /etc/init.d/functions ] && . /etc/init.d/functions 
ZT=$1
FIREWALLD () {
    systemctl stop firewalld
    if [ $? -eq 0 ];then
        action "防火墙关闭成功!" /bin/true
    else
        action "防火墙关闭失败!" /bin/false
    fi
}
Selinux () {
    sum=$(cat /etc/selinux/config |awk -F= 'NR==7{print $2}')
    if [ $sum = disabled  ];then
        action "selinux 关闭成功!" /bin/true
    else
        action "selinux 关闭失败!" /bin/false
    fi
}
Yum () {
    Version=$(awk  '{print $(NF-1)}'  /etc/redhat-release)
    if [ ${Version%%.*} -eq 6 ];then
         rm  -rf  /etc/yum.repos.d/*  &>/dev/null
         if [ $? -eq 0];then
             action "开始安装Base源。。。" /bin/true
             curl -s  -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo  
             if [ $? -eq 0 ];then
                 action "Base安装成功!" /bin/true
                 curl -s  -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
                 if [ $? -eq 0 ];then
                     action "eplo源 安装成功" /bin/true
                 else
                     action "eplo源 安装失败" /bin/false
                 fi
             else
                 action "Base安装失败!" /bin/false
             fi
        else
         action "没有该版本的源!" /bin/false
         exit
        fi
        elif [ ${Version%%.*} -eq 7 ];then
         rm  -rf  /etc/yum.repos.d/*  &>/dev/null
         if [ $? -eq 0 ];then
             action "开始安装Base源。。。" /bin/true
             curl -s  -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  
             if [ $? -eq 0 ];then
                 action "Base安装成功!" /bin/true
                 curl -s  -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
                 if [ $? -eq 0 ];then
                     action "eplo源 安装成功" /bin/true
                 else
                     action "eplo源 安装失败" /bin/false
                 fi
             else
                 action "Base安装失败!" /bin/false
             fi
     else
         action "没有该版本的源!" /bin/false
         exit
     fi
     fi   
}
case $ZT in
    firewalld)
        FIREWALLD
        ;;
    selinux)
        Selinux
        ;;
    yum)
        Yum
        ;;
    *)
        echo "你输入的不对输入 {firewalld|selinux|yum}"
        exit
esac
上一篇 下一篇

猜你喜欢

热点阅读