Skip to content

Commit aa81cbd

Browse files
authored
Create os.sh
1 parent 1f40346 commit aa81cbd

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

os.sh

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#!/bin/bash
2+
# Full-featured Linux OS info script with colors
3+
# Usage: just type 'os'
4+
5+
# Color codes
6+
GREEN='\033[0;32m'
7+
CYAN='\033[0;36m'
8+
YELLOW='\033[1;33m'
9+
MAGENTA='\033[0;35m'
10+
RED='\033[0;31m'
11+
NC='\033[0m' # No Color
12+
13+
echo -e "\n${MAGENTA}===== SYSTEM INFO =====${NC}"
14+
15+
# OS Name & Version
16+
if [ -f /etc/os-release ]; then
17+
. /etc/os-release
18+
echo -e "${GREEN}OS:${NC} ${CYAN}$NAME $VERSION${NC}"
19+
else
20+
echo -e "${GREEN}OS:${NC} Unknown"
21+
fi
22+
23+
# Kernel & Architecture
24+
echo -e "${GREEN}Kernel:${NC} ${CYAN}$(uname -r)${NC}"
25+
echo -e "${GREEN}Architecture:${NC} ${CYAN}$(uname -m)${NC}"
26+
27+
# Hostname
28+
echo -e "${GREEN}Hostname:${NC} ${CYAN}$(hostname)${NC}"
29+
30+
# Uptime
31+
echo -e "${GREEN}Uptime:${NC} ${CYAN}$(uptime -p)${NC}"
32+
33+
# CPU
34+
CPU_MODEL=$(lscpu | grep 'Model name' | sed 's/Model name:[ \t]*//')
35+
CPU_CORES=$(lscpu | grep '^CPU(s):' | awk '{print $2}')
36+
echo -e "${GREEN}CPU:${NC} ${CYAN}$CPU_MODEL${NC} (${YELLOW}$CPU_CORES cores${NC})"
37+
38+
# Memory
39+
MEM_TOTAL=$(free -h | awk '/Mem:/ {print $2}')
40+
MEM_USED=$(free -h | awk '/Mem:/ {print $3}')
41+
echo -e "${GREEN}Memory:${NC} ${CYAN}$MEM_USED${NC} / ${CYAN}$MEM_TOTAL${NC} used"
42+
43+
# Disk usage (root)
44+
DISK_TOTAL=$(df -h / | awk 'NR==2{print $2}')
45+
DISK_USED=$(df -h / | awk 'NR==2{print $3}')
46+
echo -e "${GREEN}Disk ( / ):${NC} ${CYAN}$DISK_USED${NC} / ${CYAN}$DISK_TOTAL${NC} used"
47+
48+
# IP Address
49+
IP=$(hostname -I | awk '{print $1}')
50+
echo -e "${GREEN}IP:${NC} ${CYAN}${IP:-Not available}${NC}"
51+
52+
# VMware Tools IP (optional)
53+
if command -v vmrun >/dev/null 2>&1; then
54+
VM_IP=$(vmrun getGuestIPAddress *.vmx 2>/dev/null)
55+
if [ $? -eq 0 ]; then
56+
echo -e "${GREEN}VMware Guest IP:${NC} ${CYAN}$VM_IP${NC}"
57+
fi
58+
fi
59+
60+
# Docker info
61+
if command -v docker >/dev/null 2>&1; then
62+
DOCKER_VERSION=$(docker --version | awk '{print $3}' | sed 's/,//')
63+
DOCKER_RUNNING=$(docker ps -q | wc -l)
64+
echo -e "${GREEN}Docker:${NC} ${YELLOW}$DOCKER_VERSION${NC}, Running Containers: ${CYAN}$DOCKER_RUNNING${NC}"
65+
fi
66+
67+
echo -e "${MAGENTA}========================${NC}\n"

0 commit comments

Comments
 (0)