Skip to content

Instantly share code, notes, and snippets.

@TheNolle
Created July 3, 2024 12:51
Show Gist options
  • Save TheNolle/bc442162427e368fc11b34e96ee3eb95 to your computer and use it in GitHub Desktop.
Save TheNolle/bc442162427e368fc11b34e96ee3eb95 to your computer and use it in GitHub Desktop.
For 42
#!/bin/bash
# Architecture
arch=$(uname -a)
# CPU - Physical
cpuf=$(grep "physical id" /proc/cpuinfo | wc -l)
# CPU - Virtual
cpuv=$(grep "processor" /proc/cpuinfo | wc -l)
# RAM - Total
ram_total=$(free --mega | awk '$1 == "Mem:" {print $2}')
# RAM - Used
ram_use=$(free --mega | awk '$1 == "Mem:" {print $3}')
# RAM - Percentage
ram_percent=$(free --mega | awk '$1 == "Mem:" {printf("%.2f"), $3/$2*100}')
# Disk - Total
disk_total=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_t += $2} END {printf ("%.1fGb\n"), disk_t/1024}')
# Disk - Used
disk_use=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_u += $3} END {print disk_u}')
# Disk - Percentage
disk_percent=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_u += $3} {disk_t+= $2} END {printf("%d"), disk_u/disk_t*100}')
# CPU Load
cpul=$(vmstat 1 2 | tail -1 | awk '{printf $15}')
cpu_op=$(expr 100 - $cpul)
cpu_fin=$(printf "%.1f" $cpu_op)
# Last Boot
lb=$(who -b | awk '$1 == "system" {print $3 " " $4}')
# LVM Usage
lvmu=$(if [ $(lsblk | grep "lvm" | wc -l) -gt 0 ]; then echo yes; else echo no; fi)
# TCP Connexions
tcpc=$(ss -ta | grep ESTAB | wc -l)
# User Logs
ulog=$(users | wc -w)
# Networking - IP
ip=$(hostname -I)
# Networking - Mac Address
mac=$(ip link | grep "link/ether" | awk '{print $2}')
# Sudo Logs
cmnd=$(journalctl _COMM=sudo | grep COMMAND | wc -l)
wall " Architecture: $arch
CPU physical: $cpuf
vCPU: $cpuv
Memory Usage: $ram_use/${ram_total}MB ($ram_percent%)
Disk Usage: $disk_use/${disk_total} ($disk_percent%)
CPU load: $cpu_fin%
Last boot: $lb
LVM use: $lvmu
Connections TCP: $tcpc ESTABLISHED
User log: $ulog
Network: IP $ip ($mac)
Sudo: $cmnd cmd"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment