清空(非删除)log可以用下面的语法
echo "" > access.log
或者
echo > access.log
另外这里有个例子清空log的,你可以参照一下,或者直接照搬
#!/bin/bash
#变量赋值等于号两边不能有空格
FILE_PATH=/app/xxx/catania.out
#if判断条件前后一定要有空格,且要有;then
if [ -f $FILE_PATH ];then
#表达式一定要用``括起来,原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。
#expr 是一款表达式计算工具,使用它能完成表达式的求值操作
#表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2
FILE_SIZE=`stat -c %s $FILE_PATH`
#除法(/)
FILE_SIZE1=`expr $FILE_SIZE / 1024 / 1024 / 1024`
echo $FILE_PATH文件大小为:[$FILE_SIZE]Byte,[$FILE_SIZE1]GB
#乘法(\*)
THRESHOLD=`expr 1 \* 1024 \* 1024 \* 1024`
if [ $FILE_SIZE -gt $THRESHOLD ];then
echo 大于阈值:1GB,开始清空
echo > $FILE_PATH
#echo后的字符串可以带""也可以不用
echo "清空成功"
fi
else
echo $FILE_PATH文件不存在
fi