在做系统运维工作时,有时会发现一个问题:某些存储空间的使用率过高。换句话说就是空间快被堆满了,需要释放空间。大多数情况下,导致空间不足的罪魁祸首通常是一些log日志文件。对于某些特殊系统来说,日志文件还不能直接删除,只能通过清空内容的方式来释放空间。
1.echo
命令
通过echo
命令将空字符串重定向至文件
powershell
echo "" > access.log
或者
echo > access.log
2.直接重定向
直接将空字符串重定向至文件
powershell
> access.log
3. true
命令
通过true
命令将空字符串重定向至文件
powershell
true > access.log
或者
: > access.log
4. /dev/null
重定向至文件
/dev/null
设备文件是一个特殊的文件,它将清空送到它这里来的所有输入,而它的输出则可被视为一个空文件。所以可以通过使用 cat
命令 显示 /dev/null
的内容然后重定向输出到需要被清空的文件。
powershell
cat /dev/null > access.log
或者
cp /dev/null access.log
总而言之,想要在不删除文件的情况下清空文件,换个思路就是只需要想办法让文件的内容是空字符串即可