You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

88 lines
1.5 KiB
Bash

#!/bin/bash
# 'Lil Fetch
# A tiny little fetch tool
# By Kat Hamer
# Get RAM used
ram_used() {
awk '/^Mem/ {print $3}' <(free -m)
}
# Get total RAM
ram_total() {
awk '/^Mem/ {print $2}' <(free -m)
}
# Get WM name (Requires wmctrl to be installed!)
wm_name() {
if [ -x "$(command -v wmctrl)" ]
then
awk '/Name:/ {print $2}' <(wmctrl -m)
else
echo "Unknown (Is wmctrl installed?)"
fi
}
# Store OS info (DOES NOT WORK ON ALL SYSTEMS!)
os_info() {
source /etc/os-release
}
# Get shell version
shell_version() {
case $(basename "$SHELL") in
"bash")
echo "Bash $BASH_VERSION"
;;
"zsh")
zsh --version
;;
*)
echo "$SHELL"
;;
esac
}
# Get uptime
uptime() {
uptime | gawk '{ printf $1 }'
}
display_bar() {
echo -e "\e[41m \e[42m \e[43m \e[44m \e[45m \e[46m \e[47m \e[0m"
}
output_color() {
os_info
accent_ansi="\e[0;36m"
reset_ansi="\e[0m"
echo -e "$accent_ansi$(whoami)$reset_ansi@$accent_ansi$(hostname)$reset_ansi in $accent_ansi$(pwd)$reset_ansi"
echo -e "OS: $accent_ansi$NAME$reset_ansi"
echo -e "RAM: $accent_ansi$(ram_used) MB$reset_ansi/$accent_ansi$(ram_total)$reset_ansi MB"
echo -e "Shell: $accent_ansi$(shell_version)$reset_ansi"
echo -e "WM: $accent_ansi$(wm_name)$reset_ansi"
echo
display_bar
}
output_plain() {
os_info
echo -e "$(whoami)@$(hostname) in $(pwd)$"
echo -e "OS: $NAME"
echo -e "RAM: $(ram_used) MB/$(ram_total) MB"
echo -e "Shell: $(shell_version)"
echo -e "WM: $(wm_name)"
}
main() {
output_color
}
# Call main function
main