Shell 硬件信息

  • HardwareInfo.sh
#!/usr/bin/env bash
# ------------------------------------------------------------------------ #
# Script Name:   hardware_machine.sh 
# Description:   Show informations about machine hardware.
# Written by:    Amaury Souza
# Maintenance:   Amaury Souza
# ------------------------------------------------------------------------ #
# Usage:         
#       $ ./hardware_machine.sh
# ------------------------------------------------------------------------ #
# Bash Version:  
#              Bash 4.4.19
# ------------------------------------------------------------------------ #

function menuprincipal () {
clear
TIME=1
echo " "
echo $0
echo " "
echo "Choose an option below!
        1 - Verify desktop processor
    2 - Verify system kernel
    3 - Verify installed softwares
    4 - Operation system version
           5 - Verify desktop memory
    6 - Verify serial number
    7 - Verify system IP     
    0 - Exit"
echo " "
echo -n "Chosen option: "
read opcao
case $opcao in
    1)
        function processador () {
            CPU_INFO=`cat /proc/cpuinfo | grep -i "^model name" | cut -d ":" -f2 | sed -n '1p'`
            echo "CPU model: $CPU_INFO"
            sleep $TIME
        }    
        processador
        read -n 1 -p "<Enter> for main menu"
        menuprincipal
        ;;

    2)
        function kernel () {
            #RED HAT: cat /etc/redhat-release
            KERNEL_VERSION_UBUNTU=`uname -r`
            KERNEL_VERSION_CENTOS=`uname -r`
            if [ -f /etc/lsb-release ]
            then
                echo "kernel version: $KERNEL_VERSION_UBUNTU"
            else
                echo "kernel version: $KERNEL_VERSION_CENTOS"
            fi
        }
        kernel
        read -n 1 -p "<Enter> for main menu"
        menuprincipal
        ;;

    3)
        function softwares () {
            #while true; do
            TIME=3
            echo " "
            echo "Choose an option below for program's list!

            1 - List Ubuntu programs
            2 - List Fedora programs
            3 - Install programs
            4 - Back to menu"
            echo " "
            echo -n "Chosen option: "
            read alternative
            case $alternative in
                1)
                    echo "Listing all programs Ubuntu's systems..."
                    sleep $TIME
                    dpkg -l > /tmp/programs.txt
                    echo Programs listed and available at /tmp
                    sleep $TIME
                    echo " "
                                        echo "Back to menu!" | tr [a-z] [A-Z]
                    sleep $TIME
                    ;;
                2)
                    echo "Listing all programs Fedora's systems..."
                    sleep $TIME
                    yum list installed > /tmp/programs.txt
                    echo Programs listed and available at /tmp
                    sleep $TIME
                    ;;
                3)
                    echo Installing programss...
                    LIST_OF_APPS="pinta brasero gimp vlc inkscape blender filezilla"
                    #use aptitude command for programs loop.
                    apt install aptitude -y
                    aptitude install -y $LIST_OF_APPS
                    ;;
                4)
                    echo Back to main menu...
                    sleep $TIME
                    ;;    
            esac
        #done
        }        
        softwares
        menuprincipal
        ;;

    4)
        function sistema () {
            VERSION=`cat /etc/os-release | grep -i ^PRETTY`
            if [ -f /etc/os-release ]
            then
                echo "The system version: $VERSION"
            else
                echo "System not supported"
            fi
        }
        sistema
        read -n 1 -p "<Enter> for main menu"
        menuprincipal
        ;;


    5)
        function memory () {
            MEMORY_FREE=`free -m  | grep ^Mem | tr -s ' ' | cut -d ' ' -f 4`
            #MEMORY_TOTAL=
            #MEMORY_USED=
            echo Verifying system memory...
            echo "Memory free is: $MEMORY_FREE"    
        }
        memory
        read -n 1 -p "<Enter> for main menu"
        menuprincipal
        ;;

    6)
        function serial () {
            SERIAL_NUMBER=`dmidecode -t 1 | grep -i serial`
            echo $SERIAL_NUMBER
        }
        serial
        read -n 1 -p "<Enter> for main menu"
        menuprincipal
        ;;

    7)
        function ip () {
            IP_SISTEMA=`hostname -I`
            echo IP is: $IP_SISTEMA
        }
        ip
        read -n 1 -p "<Enter> for main menu"
        menuprincipal
        ;;

    0) 
           echo Exiting the system...
                  sleep $TIME
           exit 0
           ;;

    *)
        echo Invalid option, try again!
        ;;
esac
}
menuprincipal

执行:

$ bash hardware_machine.sh
hardware_machine.sh

Choose an option below!
        1 - Verify desktop processor
        2 - Verify system kernel
        3 - Verify installed softwares
        4 - Operation system version
        5 - Verify desktop memory
        6 - Verify serial number
        7 - Verify system IP     
        0 - Exit

Chosen option: 1

CPU model:  Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz
Chosen option: 7
IP is: 192.168.211.70 172.18.0.1 172.17.0.1

Chosen option: 2
kernel version: 4.15.0-180-generic

Chosen option: 3

Choose an option below for program's list!

                        1 - List Ubuntu programs
                        2 - List Fedora programs
                        3 - Install programs
                        4 - Back to menu




Chosen option: 5
Verifying system memory...
Memory free is: 698

Chosen option: 6
Serial Number: VMware-56 4d 67 71 20 7d eb e5-97 b4 bb 44 a3 d3 5f c6
Copyright © ghostwritten 浙ICP备2020032454号 2022 all right reserved,powered by Gitbook该文件修订时间: 2022-06-22 16:53:52

results matching ""

    No results matching ""