Files
Autodesk-Fusion-360-for-Linux/files/testing-scripts/check-disk-space.sh

52 lines
1.9 KiB
Bash
Raw Normal View History

2024-09-04 20:05:57 +02:00
#!/bin/bash
2024-09-04 19:53:24 +02:00
function check_disk_space {
# Set the directory to check
local SELECTED_DIRECTORY="$HOME" # Replace with the actual directory
local GREEN="\033[0;32m"
local YELLOW="\033[1;33m"
local RED="\033[0;31m"
local NOCOLOR="\033[0m"
2024-09-04 20:05:57 +02:00
# Debug output
echo -e "${YELLOW}Checking disk space for directory: $SELECTED_DIRECTORY${NOCOLOR}"
2024-09-04 19:53:24 +02:00
# Get the free disk space in the selected directory
2024-09-04 20:05:57 +02:00
local GET_DISK_SPACE
GET_DISK_SPACE=$(df -h "$SELECTED_DIRECTORY" 2>/dev/null | awk 'NR==2 {print $4}')
2024-09-04 19:53:24 +02:00
if [[ -z "$GET_DISK_SPACE" ]]; then
2024-09-04 20:05:57 +02:00
echo -e "${RED}Failed to retrieve disk space information. Ensure the directory exists and try again.${NOCOLOR}"
2024-09-04 19:53:24 +02:00
exit 1
fi
echo -e "${GREEN}The free disk memory size is: $GET_DISK_SPACE${NOCOLOR}"
2024-09-04 20:05:57 +02:00
# Extract numerical value and unit, and replace comma with dot
local DISK_SPACE_NUM
local DISK_SPACE_UNIT
DISK_SPACE_NUM=$(echo "$GET_DISK_SPACE" | sed 's/[A-Za-z]//g' | sed 's/,/./g')
DISK_SPACE_UNIT=$(echo "$GET_DISK_SPACE" | sed 's/[0-9.,]//g')
2024-09-04 19:53:24 +02:00
# Convert to gigabytes
2024-09-04 20:05:57 +02:00
local DISK_SPACE_GB
2024-09-04 19:53:24 +02:00
case $DISK_SPACE_UNIT in
G) DISK_SPACE_GB=$DISK_SPACE_NUM ;;
M) DISK_SPACE_GB=$(echo "scale=2; $DISK_SPACE_NUM / 1024" | bc) ;;
2024-09-04 20:05:57 +02:00
T) DISK_SPACE_GB=$(echo "scale=2; $DISK_SPACE_NUM * 1024" | bc) ;;
2024-09-04 19:53:24 +02:00
*) DISK_SPACE_GB=0 ;;
esac
# Check if the free disk space is greater than 10GB
if (( $(echo "$DISK_SPACE_GB > 10" | bc -l) )); then
echo -e "${GREEN}The free disk memory size is greater than 10GB.${NOCOLOR}"
else
echo -e "${YELLOW}There is not enough disk free memory to continue installing Fusion on your system!${NOCOLOR}"
echo -e "${YELLOW}Make more space in your selected disk or select a different hard drive.${NOCOLOR}"
echo -e "${RED}The installer has been terminated!${NOCOLOR}"
exit 1
fi
}
check_disk_space