在做log切割时发现access.log文件实在是太大了,后面就拓展怎么清空文件内容,查找资料后发现有五中方法,现在记录下来
1:通过重定向到NULL清空文件
#> my_access.log
2:使用 true 命令重定向清空文件
# : > access.log
或
# true > access.log
:
符号,它是 shell 的一个内置命令,等同于 true
命令
3:使用 cat/cp/dd 实用工具及 /dev/null 设备来清空文件
在 Linux 中, null
设备基本上被用来丢弃某个进程不再需要的输出流,或者作为某个输入流的空白文件,这些通常可以利用重定向机制来达到。
所以 /dev/null
设备文件是一个特殊的文件,它将清空送到它这里来的所有输入,而它的输出则可被视为一个空文件。
另外,你可以通过使用 cat 命令 显示 /dev/null
的内容然后重定向输出到某个文件,以此来达到清空该文件的目的。
cat /dev/null > my_access.log
或者
cp /dev/null my_access.log
Linux dd命令用于读取、转换并输出数据 具体
dd if=/dev/null of=access.log // if 代表输入文件,of 代表输出文件。
4:使用 echo 命令清空文件
使用 echo 命令 将空字符串的内容重定向到文件中
echo "" > my_access.log
或者
echo > my_access.lo
5. 使用 truncate 命令来清空文件内容
truncate 可被用来将文件缩减或扩展至指定大小
truncate -s 0 my_access.log