比较文件夹大小&有条件的

时间:2018-04-20 11:47:16

标签: bash shell

我想要做的基本上是获取文件夹大小并检查它是否大于X大小来执行某些操作(从外部移动文件)......但条件不起作用。

#!/bin/bash

FOLDER_SIZE="5709119"  
CHECK=$(du -s /var/backups/ | cut -f1)

echo "Current folder size $CHECK"
echo "Current SIZE LIMIT $FOLDER_SIZE"

   if [[ $CHECK -gt $FOLDER_SIZE  ]]
then
echo "$CHECK BIGGER THAN $FOLDER_SIZE"
else
echo "$CHECK SMALLER THAN $FOLDER_SIZE"
fi

这里的问题是:我总是得到$ check的大小小于$ folder_size这不是真的,因为$ CHECK文件夹的mucher大于5GB。

当我运行脚本时,我也得到了这个错误:

  

bk_script.sh:35:bk_script.sh:[[:not found

任何提示都将非常感激。

1 个答案:

答案 0 :(得分:2)

bk_script.sh: 35:bk_script.sh: [[: not found

你是如何运行脚本的?该错误表明您正在执行类似sh bk_script.sh而非./bk_script.sh的操作。始终执行后者,因此它使用声明的shell /bin/bash而不是/bin/sh。 Plain sh没有[[运算符。