shell整理(35)====模拟用户登录的打印菜单脚本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell整理(35)====模拟用户登录的打印菜单脚本相关的知识,希望对你有一定的参考价值。

(一)打印一个菜单,接受一个输入,如果没有这个用户就创建用户和密码,将创建的用户和密码写入到一个文件,如果文件中有就模拟一个用户登录,要求用户名任意,可以是(^$ ^q ),密码分两种可以是空密码,也可以是任意长度的密码。

shell代码如下:

#!/bin/bash


create_user(){

        read -p "Plz Input Name:" name

        cat file | grep $name &>/dev/null

        [ $? -eq 0 ] && echo "The user is exise" && exit 0

        if [ -z $name ];then

                echo "no exise" && exit 0

        fi

        read -p "Plz Input Passwd:" passwd

        read -p "Plz Input Passwd Again:" passwd1

        if [[ "$passwd" != "$passwd1"  ]] ;then

                echo "passwd not right" && exit 0

        fi

        if [ ! -z  "$passwd"  ];then

                echo "$name   "$passwd" " >>file

                echo "successfully!"

        fi

        if [ -z "$passwd" ];then

                echo "$name   " " " >>file

                echo "successfully!"

        fi


}

login(){


        read -p "Plz Input name:" name

        a="`cat file | awk ‘$1=="‘$name‘"‘|cut -d ‘ ‘ -f2-`"

        b=`echo "$a" | sed ‘s/ //g‘`

        cat file | awk ‘$1=="‘$name‘"‘ &> /dev/null

        if [ $? -eq 0 ];then

                read -p  "Plz Input your passwd:" passwd

                c=`echo $passwd | sed ‘s/ //g‘`


                if [[ "$b" = "$c"  ]];then

                        echo "successfully!"

                else

                        echo error

                fi

        else

                echo "not user;plz to creiate"

        fi

}

haha(){

case $cc in

        1)

                create_user

                ;;

        2)

                login

                ;;

        3)

                exit 0

                ;;

        *)

                exit 1

                ;;

esac


}

cat << EOF

=========please choice=========

        1)  create_user

        2)  login

        3)   exit


EOF

read -p "Choice:" cc

haha

            


这个脚本虽然很简单,但是我也根据不同的情况调试了好久.

本文出自 “IT生活” 博客,请务必保留此出处http://dingxue.blog.51cto.com/12290895/1970428

以上是关于shell整理(35)====模拟用户登录的打印菜单脚本的主要内容,如果未能解决你的问题,请参考以下文章

模拟购物车程序

shell基本语法

shell模拟银行系统

35岁学编程第10天

shell编程基础补充整理

Python购物车模拟