在第16行,time的赋值应该为time=$(date),而不是time=date。此外,在第23行,应该使用双引号包裹$1,以避免在参数为空时出错。修改后的脚本如下:

#!/bin/sh

#内存总量 total=$( free -m | grep Mem | awk '{print $2}') #已使用内存 used=$( free -m | grep Mem | awk '{print $3}') #空闲内存 free=$( free -m | grep Mem | awk '{print $4}') #内存使用率 rate=$((($total-$free)*100/$total))

time=$(date) echo "############$time###############"

#$1 is max Mem if [ $rate -gt "$1" ] then echo "rate=$rate freeMemory start!" sync sudo sh -c "echo 3 >> /proc/sys/vm/drop_caches" echo "FreeMemory Success!" else echo "rate=$rate Memory is normal" f

unary operator expected sh脚本报错#!binsh#内存总量total=$ free -m grep Mem awk print $2#已使用内存used=$ free -m grep Mem awk print $3#空闲内存free=$ free -m grep Mem awk print $4#内存使用率rate=$$total-$free100$tota

原文地址: https://www.cveoy.top/t/topic/fcKA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录