我想要做的基本上是获取文件夹大小并检查它是否大于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
任何提示都将非常感激。
答案 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没有[[
运算符。