Advertisement
MikhailWilson

i3status Patch to show RAM usage in %

Feb 18th, 2014
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.16 KB | None | 0 0
  1. # shell script to add percentage of ram, monitor brightness, and window title to i3status
  2. # needs sed, free, and bc
  3. # showing cpu_usage has to be enabled
  4. # output_format has to be set to "i3bar"
  5.  
  6. i3status | while :
  7. do
  8.     read line
  9.  
  10.     # get ram usage in percent
  11.     # you'll need to edit this to match up your total ram
  12.     ram_used="`free -k | sed -n -e '3p' | sed 's/-\/+ buffers\/cache:\s*//' | cut -b 1-7`"
  13.     ram_total="`free -k | sed -n -e '2p' | sed 's/Mem:\s*//' | cut -b 1-7`"
  14.     ram_buffer="`free -k | sed -n -e '2p' | sed 's/Mem:\s*//' | cut -b 46-51`"
  15.     net_ram=`echo $[$ram_total-$ram_buffer]`
  16.     memperc=`echo "$(echo "scale=1; $ram_used * 100 / $net_ram" | bc )"`
  17.  
  18.     # if used RAM is more than 80% show text in red, else white
  19.     if [ $(echo "$memperc > 75" | bc) -eq 1 ]
  20.     then
  21.         color=FF0000
  22.     else
  23.         color=FFFFFF
  24.     fi
  25.    
  26.     # add in ram, window brightness, and window title
  27.     sedline="s/cpu_usage/ram_usage\",\"color\":\"\#${color}\",\"full_text\":\"RAM ${memperc}%\"},{\"name\":\"cpu_usage/"
  28.    
  29.     line=`echo $line | sed -e "$sedline" | sed -e "s/% \"/%\"/"`
  30.  
  31.     colonline='s/\([a-zA-Z]\):/\1/g'
  32.     final=`echo $line | sed -e "$colonline"`
  33.  
  34.     echo $final || exit 1
  35. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement