Last active
March 19, 2024 09:54
-
-
Save MiniXC/47100a896d0d265aeb589b292919d744 to your computer and use it in GitHub Desktop.
ram_police.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if [ $# -eq 0 ]; then | |
tmux new-session -d -s ram_police | |
tmux send-keys -t ram_police "bash ram_police.sh true" ENTER | |
tmux capture-pane -t ram_police | |
else | |
free_ram=$(free -g | grep -m1 -E "[[:digit:]]" | tail -c4) | |
ram_limit=10 | |
clear | |
echo "RAM POLICE WITH $ram_limit GB MIN." | |
# check if availabe RAM is below the limit every second | |
# do nothing if RAM is above the limit | |
# kill all python processes if RAM is below the limit | |
police="π΄π΅" | |
while true; do | |
current_date_time=$(date) | |
if [ $free_ram -lt $ram_limit ]; then | |
echo "[${current_date_time}] π RAM is almost full" | |
echo "[${current_date_time}] πͺ python processes" | |
pkill -f .*python.* | |
free_ram=$(free -g | grep -m1 -E "[[:digit:]]" | tail -c4) | |
else | |
if [ $police == "π΄π΅" ]; then | |
police="π΅π΄" | |
else | |
police="π΄π΅" | |
fi | |
echo -ne "[${current_date_time}] $police $free_ram GB RAM free $police\033[0K\r" | |
free_ram=$(free -g | grep -m1 -E "[[:digit:]]" | tail -c4) | |
fi | |
sleep 1 | |
done | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment