I have to write a piece of code which compares the available disk space with a pre-defined value and takes further actions based on comparison.
AVAILSIZE=$(df | head -n 2 | tail -n 1 | awk '{ print $4 }' | sed 's/G//')
if [[ $AVAILSIZE -lt 7.0 ]]
then
echo "[INFO] Not enough disk space available. Proceeding with cleanup..."
else
echo "[INFO] Enough disk space available. Skipping cleanup."
fi
I have written this code. But the problem here is, "AVAILSIZE" is a float number and executing above throws error "-bash: [[: 3.7: syntax error: invalid arithmetic operator (error token is ".7")".
I tried using bc command but it throws another error "-bash: bc: command not found".
Please help with this. Or may be suggest another approach doing what I intent to.
Edit 1:
This is my df command output. I am interested in value 3.7G from first Filesystem result. Variable AVAILSIZE will have 3.7 value in it.
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl_p10--centos7--template-root 16G 13G 3.7G 78% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 185M 1.7G 10% /run