Linux 清空或删除文件

使用重定向的方式清空文件

1
2
3
4
5
6
7
> access.log # 在 Mac 下没有成功
: > access.log # 在 Mac 下成功
cat /dev/null > access.log # 使用 cat 显示 /dev/null 中的内容,然后重定向 access.log 文件中
cp /dev/null access.log # 复制 /dev/null 的内容到 access.log 文件,达到清空的目的。
echo " " > access.log #使用 echo 将空白字符重定向 access.log 中
echo > access.log # 同上
echo -n > access.log

在 Linux 中,null设备基本上被用来丢弃某个进程不再需要的输出流,或者作为某个输入流的空白文件。

使用 truncate

truncate 可用来将一个文件缩小或者扩展到某个给定的大小。Mac 中不存在该命令

1
truncate -s 0 access.log #使用 -s 指定文件大小