Advertisement
Guest User

rpi-stats.sh

a guest
Mar 2nd, 2017
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.83 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. PATH=$PATH:/opt/vc/bin
  4. export PATH
  5.  
  6. GET_CPU_FREQ() {
  7. let CPU_FREQ=$1/1000
  8. echo "$CPU_FREQ"
  9. }
  10.  
  11. GET_CPU_OVERVOLTAGE() {
  12. let CPU_OVERVOLTAGE=${1#*.}-20
  13. if [[ $CPU_OVERVOLTAGE = *[^0-9]* ]]; then
  14. echo "$CPU_OVERVOLTAGE"
  15. else
  16. echo "+$CPU_OVERVOLTAGE"
  17. fi
  18. }
  19.  
  20. DISPLAY_TEMP(){
  21. CPU_TEMP=$(vcgencmd measure_temp)
  22. CPU_TEMP=${CPU_TEMP:5:4}
  23. echo "CPU Temperature: $CPU_TEMP C"
  24. }
  25.  
  26. DISPLAY_VOLTAGE(){
  27. CPU_VOLTAGE=$(vcgencmd measure_volts)
  28. CPU_VOLTAGE=${CPU_VOLTAGE:5:4}
  29. echo "CPU Voltage: $CPU_VOLTAGE V"
  30. if [ $CPU_VOLTAGE != "1.20" ]; then
  31. CPU_OVERVOLTAGE=$(GET_CPU_OVERVOLTAGE $CPU_VOLTAGE)
  32. if [ CPU_OVERVOLTAGE > "1.20" ]; then
  33. echo -e "CPU Overvoltage: \033[0;31m$CPU_OVERVOLTAGE\033[0m"
  34. else
  35. echo -e "CPU Undervoltage: \032[0;31m$CPU_OVERVOLTAGE\033[0m"
  36. fi
  37. fi
  38. }
  39.  
  40. DISPLAY_MIN_FREQ(){
  41. CPU_FREQ_MIN=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq)
  42. CPU_FREQ_MIN=$(GET_CPU_FREQ $CPU_FREQ_MIN)
  43. echo "Min CPU Frequency: $CPU_FREQ_MIN MHz"
  44. }
  45.  
  46. DISPLAY_MAX_FREQ(){
  47. CPU_FREQ_MAX=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq)
  48. CPU_FREQ_MAX=$(GET_CPU_FREQ $CPU_FREQ_MAX)
  49. echo "Max CPU Frequency: $CPU_FREQ_MAX MHz"
  50. }
  51.  
  52. DISPLAY_CURRENT_FREQ(){
  53. CPU_FREQ_CURRENT=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)
  54. CPU_FREQ_CURRENT=$(GET_CPU_FREQ $CPU_FREQ_CURRENT)
  55. echo "Current CPU Frequency: $CPU_FREQ_CURRENT MHz"
  56. }
  57.  
  58. DISPLAY_GOVERNOR(){
  59. CPU_GOVERNOR=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor)
  60. echo "CPU Governor: $CPU_GOVERNOR"
  61. }
  62.  
  63. DISPLAY_TEMP
  64. DISPLAY_VOLTAGE
  65. DISPLAY_MIN_FREQ
  66. DISPLAY_MAX_FREQ
  67. DISPLAY_CURRENT_FREQ
  68. DISPLAY_GOVERNOR
  69.  
  70. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement