50 lines
		
	
	
	
		
			971 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
	
		
			971 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| #| Jacob Alexander 2014
 | |
| #| Arg List
 | |
| #| 1 - size binary   (e.g. avr-size)
 | |
| #| 2 - measurement type (flash or ram)
 | |
| #| 3 - binary file   (e.g. kiibohd.hex)
 | |
| #| 4 - total available (flash/ram) in bytes
 | |
| #| 5 - flash/ram text
 | |
| 
 | |
| 
 | |
| case "$2" in
 | |
| "flash")
 | |
| 	USED=$("$1" "$3" | tail -n-1 | awk '{ print $1+$2 }')
 | |
| 	;;
 | |
| "ram")
 | |
| 	USED=$("$1" "$3" | tail -n-1 | awk '{ print $2+$3 }')
 | |
| 	;;
 | |
| *)
 | |
| 	echo "INVALID Measurement type: $2"
 | |
| 	exit 1
 | |
| esac
 | |
| 
 | |
| 
 | |
| # Calculates the total flash/ram used
 | |
| TOTAL="$4"
 | |
| PERCENTAGE=$((USED * 100 / TOTAL))
 | |
| 
 | |
| # Size Colours
 | |
| # Red/Flashing - Almost full
 | |
| if (( PERCENTAGE > 95 )); then
 | |
| 	COLOR="\t\033[1;5;31m"
 | |
| # Red - Getting full
 | |
| elif (( PERCENTAGE > 90 )); then
 | |
| 	COLOR="\t\033[1;31m"
 | |
| 
 | |
| # Yellow - Starting to fill up
 | |
| elif (( PERCENTAGE > 50 )); then
 | |
| 	COLOR="\t\033[1;33m"
 | |
| 
 | |
| # Green - Lots of room
 | |
| else
 | |
| 	COLOR="\t\033[1;32m"
 | |
| fi
 | |
| 
 | |
| # Displays Results
 | |
| NAME="$5"
 | |
| echo -e "\t\033[1m${NAME}\033[m: ${COLOR}${PERCENTAGE}%\033[m \t${USED}/${TOTAL}\tbytes"
 | |
| 
 | |
| exit 0
 | |
| 
 | 
