[shell]写一个简单的Linux工具箱

 黑渐神|he-jason.com   2018-11-23 18:10   864 人阅读  [shell]写一个简单的Linux工具箱已关闭评论

shell实现linux简单工具箱

#!/usr/bin/sh
while [ 1 ]
    do
inter_IP=`curl -s  icanhazip.com`
eth_IP=`hostname -I`
U1_load=`uptime|awk -F"[ ,]+" '{print $11}'`
U5_load=`uptime|awk -F"[ ,]+" '{print $12}'`
U15_load=`uptime|awk -F"[ ,]+" '{print $13}'`
clear
cat <<EOF
        ======================================================================
        ||            h 显示命令帮助            ||作    者:jason           ||
        ||            f 显示登陆信息            ||版    本:version 1.0     ||
        ||            d 显示磁盘挂载            ||当前日期:$(date +%Y-%m-%d)      ||
        ||            m 查看内存使用            ||当前用户:$USER            ||
        ||            u 查看系统负载            ||QQ:517072772             ||
        ||            q 退出程序                ||$inter_IP $eth_IP||
        ======================================================================
EOF
    read -p "请做出你的选择:" Com 
        case $Com in
            h)
                read -p "请输入你要查询帮助的命令:" h_com
                $h_com &>/dev/null
                if [ $? -ne 0 ];then
                    echo "没有这个命令!"
                else
                        man $h_com
                fi
                continue
            ;;
            f|F)
                while true
                do
                read -p "请输入要查询的用户:q 返回 " f_user
                    if [ "$f_user" == "" ];then
                        continue
                    elif [ $f_user == "q" ];then
                        break
                    fi
                    id $f_user &>/dev/null
                    if [ $? -ne 0 ];then
                        echo "没有这个用户!"
                    else
                        w|grep $f_user
                    fi
                done
                continue
            ;;
            d|D)
              while true
                  do
                    cat <<EOF

                            b 显示磁盘可用大小信息
                            i 显示磁盘inode使用信息
                            q 返回上一级菜单
EOF
                        read -p "请选择磁盘信息命令: " d_Num
                        case $d_Num in
                            b|B)
                            df -h
                            continue
                            ;;
                            i|I)
                            df -i
                            continue
                            ;;
                            q|Q)
                            break
                            ;;
                        esac  
                    done
                continue
            ;;
            m|M)
                free -h
                free -b|awk 'NR==2{print "当前内存使用率:"int($3/$2*100)"%"}'
                continue
            ;;
            u|U)
            echo "1 分钟平均负载:$U1_load"
            echo "5 分钟平均负载:$U5_load"
            echo "15分钟平均负载:$U15_load"
            while true
            do
            read -p "按任意键返回! " u_com
              if [ ! $u_com == "" ];then
                break
              else
                  continue
              fi
            done
            continue
                ;;
            q|Q|quit|exit)
                exit 1
            ;;
            *)
                continue
            ;;
        esac
    done
本文地址:https://www.he-jason.com/linuxbasic/script_language/shell/538.html
版权声明:本文为原创文章,版权归 黑渐神|he-jason.com 所有,欢迎分享本文,转载请保留出处!
NEXT:已经是最新一篇了
双11拉新分百万红包

评论已关闭!