-
Notifications
You must be signed in to change notification settings - Fork 1k
/
hardware_machine.sh
executable file
·173 lines (161 loc) · 3.67 KB
/
hardware_machine.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
#!/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