Advertisement
Guest User

dwm_status.sh

a guest
Nov 29th, 2014
525
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.47 KB | None | 0 0
  1. #!/bin/bash
  2. print_trans(){
  3. if (( `transmission-remote -l | grep 'Idle\|Up & Down\|Uploading\|Downloading\|Seeding' | wc -l` > 0 )); then
  4.         echo -ne "\x01[\x02torrent:\x06!on\x01]"    
  5. fi
  6. }
  7. print_key(){
  8. if [[ `xset -q | grep "Num Lock" | awk {'print $8'}` == off ]]; then
  9.         echo -ne "\x01[\x02num_lock:\x05!off\x01]"
  10. fi
  11. if [[ `xset -q | grep "Caps Lock" | awk {'print $4'}` == on ]]; then
  12.         echo -ne "\x01[\x02caps_lock:\x05!on\x01]"
  13. fi
  14. }
  15. print_cmus(){
  16. artist (){
  17. _artist=`cmus-remote -Q | grep " artist " | cut -c 12- | sed 's/ /_/g' | cut -c -25`
  18. if [[ -z `echo $_artist` ]]; then
  19.         echo "Unknow"
  20. else
  21.         echo "$_artist"
  22. fi
  23. }
  24. title (){
  25. _title=`cmus-remote -Q | grep title | cut -c 11- | sed 's/ /_/g' | cut -c -25`
  26. if [[ -z `echo $_title` ]]; then
  27.                 echo "Unknow"
  28.         else
  29.                 echo "$_title"
  30. fi
  31. }
  32. if [[ `cmus-remote -Q | grep status | cut -c 8-` == "playing" ]]; then
  33.         echo -ne "\x01[\x02play:\x06`artist`\x02-\x06`title`\x01]"    
  34. fi
  35. }
  36. print_im(){
  37. if [ -f /home/admin/.mcabber/mcabber.state ]; then
  38.         if [ -n "`cat /home/admin/.mcabber/mcabber.state | grep "@mrim.jabber.ru"`" ]; then
  39.                 echo -ne "\x01[\x02im:\x06!message\x01]"
  40.         fi
  41. fi
  42. }
  43. print_temp(){
  44. _temp=`cat /sys/class/thermal/thermal_zone0/temp | cut -c -2`
  45. if (( $_temp >= 75 )); then
  46.                 echo -ne "\x01[\x02warning:\x05!$_temp°\x01]";
  47. fi
  48. }
  49. print_net(){
  50. if [[ `cat /sys/class/net/enp2s0f0/operstate` == up ]]; then
  51.         _ip_enp=`ip addr show dev enp2s0f0 | grep 'inet ' | awk '{print $2}' | grep -o '^[^/]*'`
  52.         if [[ -n $_ip_enp ]]; then
  53.                 echo -ne "\x01enp2s0f0:\x02$_ip_enp"
  54.         fi
  55. fi
  56. if [[ `cat /sys/class/net/wlp3s0/operstate` == up ]]; then
  57.         _ip_wlp=`ip addr show dev wlp3s0 | grep 'inet ' | awk '{print $2}' | grep -o '^[^/]*'`
  58.         if [[ -n $_ip_wlp ]]; then
  59.                 echo -ne "\x01wlp3s0:\x02$_ip_wlp"
  60.         fi
  61. fi
  62. #if ping -c 3 icanhazip.com > /dev/null
  63. #        then echo -ne "\x01:\x02`wget -O - -t 60 -q icanhazip.com`"  
  64. #fi
  65. }
  66. print_bri(){
  67. _bri=$(echo `cat /sys/class/backlight/intel_backlight/brightness`/9.76 | bc)
  68. if (( $_bri <= "95" )); then
  69.         echo -ne "\x01bri:\x02$_bri";
  70. fi;
  71. }
  72. print_vol(){
  73. _vol=`amixer get Master | grep 'Mono:' | awk '{print $4}' | sed s/[^0-9]//g`
  74. if (( $_vol != 100 )); then
  75.                 echo -ne "\x01vol:\x02$_vol"
  76. fi
  77. }
  78. print_bat(){
  79. BAT=($`cat /sys/class/power_supply/BAT0/uevent | sed "s/POWER.*=//"`)
  80. if [ ${BAT[1]} == "Discharging" ]; then
  81.         if (( ${BAT[11]} > 75 )); then
  82.                         echo -ne "\x01[\x02bat:\x02${BAT[11]}\x01]"
  83.                 elif (( ${BAT[11]} >= 50 )); then  
  84.                         echo -ne "\x01[\x02bat:\x06${BAT[11]}\x01]"
  85.                 elif (( ${BAT[11]} >= 25 )); then  
  86.                         echo -ne "\x01[\x02bat:\x10${BAT[11]}\x01]"
  87.                 elif (( ${BAT[11]} < 25 )); then
  88.                         echo -ne  "\x01[\x02bat:\x05!${BAT[11]}\x01]"
  89.         fi
  90. else
  91.         if ((  ${BAT[11]} != 100 )); then
  92.                 echo -ne "\x01[\x02bat: charging\x01]"
  93.         fi
  94. fi      
  95. }
  96. print_date(){
  97. #echo -ne "\x01[\x02`date +%a.%d.%m`\x01]"
  98. echo -ne "\x01[\x02`date +%H:%M`\x01]"
  99. }
  100. print_lang(){
  101. echo -ne "\x02`skb -1`"
  102. }
  103.  
  104. while true; do
  105.         xsetroot -name "$(print_trans)$(print_key)$(print_cmus)$(print_im)$(print_temp)$(print_net)$(print_bri)$(print_vol)$(print_bat)$(print_date)$(print_lang)"
  106.         sleep 1
  107. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement