shell练习

1.[install lamp]

    2.[install lnmp]

    3.[exit]

    pls input the num you want:

要求:

1、当用户输入1时,输出“startinstalling lamp.”然后执行/server/scripts/lamp.sh,脚本内容输出"lampis installed"后退出脚本;

2、当用户输入2时,输出“startinstalling lnmp.”然后执行/server/scripts/lnmp.sh输出"lnmpis installed"后退出脚本;

3、当输入3时,退出当前菜单及脚本;

4、当输入任何其它字符,给出提示“Input error”后退出脚本。

5、要对执行的脚本进行相关条件判断,例如:脚本是否存在,是否可执行等。 


第一种:

#!/bin/bash

#



clear


show_usage() {

        echo "-----------------------menu-----------------------"

        echo "-------------------1.[install lamp]----------------"

        echo "-------------------2.[install lnmp]----------------"

        echo "-------------------3.[    exit  ]------------------"

        echo -n " select:    "


        read choice

        }


case $choice in

        *)

        show_usage

        ;;

esac


if [ "$choice" -eq 1 ]

then

        echo "startinstalling lamp"

        cd /home

        if [ -a lamp.sh ] && [ -x lamp.sh ]

        then

                echo "文件存在,拥有权限"

                bash /home/lamp.sh

        else

                echo "出现错误,请查看下在执行..."

        fi



elif [ "$choice" -eq 2 ]

then

        echo "startinstalling lnmp"

        cd /home

        if [ -a lnmp.sh ] && [ -x lnmp.sh ]

        then

                echo "文件存在,拥有权限"

                bash /home/lnmp.sh

        else

                echo "出现错误,请查看下在执行..."

        fi

elif [ "$choice" -eq 3 ]

then

        echo "退出菜单及脚本"

        exit 0


else [ "$choice" == "*" ]

        echo "input error,请输入正确字符..."

fi


exit 0


第二种:

#!/bin/bash

clear


        echo "-----------------------menu-----------------------"

        echo "-------------------1.[install lamp]----------------"

        echo "-------------------2.[install lnmp]----------------"

        echo "-------------------3.[    exit  ]------------------"

        echo -n " select:    "


        read choice



case $choice in

1)      echo "startinstalling lamp"

        cd /home

        if [ -a lamp.sh ] && [ -x lamp.sh ]

        then

                echo "文件存在,拥有权限"

                bash /home/lamp.sh

        else

                echo "出现错误,请查看下在执行..."

        fi

        ;;


2)      echo "startinstalling lnmp"

        cd /home

        if [ -a lnmp.sh ] && [ -x lnmp.sh ]

        then

                echo "文件存在,拥有权限"

                bash /home/lnmp.sh

        else

                echo "出现错误,请查看下在执行..."

        fi

        ;;


3)      if [ "$choice" -eq 3 ]

        then

        echo "执行退出菜单及脚本"

        exit 0

        fi

        ;;


*)      echo "input error"

        echo "请输入正确的字符..."



esac


2.

#!/bin/bash

read -p "请输入一个字符:" input

count=$(echo $input | wc -c)

if [ $count -eq 2 ]

then

        :

else

        for ((i=1;i<=2;i++))

        do

                echo "你输入不符合要求,请输入单个字符" 

        echo ""         

read -p "请输入一个字符:" input

                count=$(echo $input | wc -c)

                [ $count -eq 2 ] && break

        done

        [ $count -eq 2 ] && :

        [ $count -eq 2 ] || echo "你输入的值不符合需求,程序已经中断了!" && exit 1

fi

case $input in

        [0-9])

                echo "你输入的是一个数字"

        ;;

        [a-z]|[A-Z])

                echo "你输入的是一个字母"

        ;;

        *)

                echo "你输入的是特殊符号"

esac


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。