linux优雅删除大文件——筑梦之路

1. shell 重定向null(不存在的对象)到文件
> access.log

2.true命令
: > access.log
OR 
true > access.log

符号:是一个shell内置命令,本质上等同于true命令

3.使用带有 /dev/null 的 cat/cp/dd 应用程序清空文件

在 Linux 中,null设备主要用于丢弃进程不需要的输出流,或者作为输入流。这通常是通过重定向机制完成的。
/dev/null设备文件是一个特殊文件,它会吞噬发送给它的任何输入,或者它的输出与空文件的输出相同。
此外,你可以通过/dev/null使用cat 命令将输出重定向到文件作为输入来清空文件的内容
# cat /dev/null > access.log
也可以使用cp 命令将文件内容清空
# cp /dev/null access.log
在下面的命令中,if指的是输入文件,of指的是输出文件。
# dd if=/dev/null of=access.log

4.使用 echo 命令清空文件
# echo "" > access.log
OR
# echo > access.log

空字符串与 null 不同。一个字符串是一个对象,它可能是空的。而null意味着一个不存在的对象。

因此将上面的echo 命令的输出重定向到文件中,并使用cat 命令查看文件内容时,会打印一个空行 要发送一个空输出到文件,使用该标志-n告诉echo 不输出换行符。
# echo -n "" > access.log

5.使用 truncate 命令清空文件
truncate命令将文件的大小缩小或扩展到定义的大小。
你可以将它与-s指定文件大小的选项一起使用。要清空文件内容使用-s 0参数

# truncate -s 0 access.log

常用的rm,删除大文件时很慢。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值