Linux快速清空大文件

小柒博客 评论1,1145字数 593阅读1分58秒阅读模式

1、通过重定向到null清空文件内容

使用shell重定向null(不存在的对象)到文件的最简单方法来清空文件内容

[root@localhost ~]# > access.log

2、使用true命令重定向清空文件

这里我们将使用一个符号,:是一个shell内置命令,本质上等同于true命令,它可被用来作为一个 no-op(即不进行任何操作)。另一种清空文件的方法是将 : 或者 true 内置命令的输出重定向到文件中,具体如下:

[root@localhost ~]# : > access.log

另一种方法是将:或true内置命令的输出重定向到文件

[root@localhost ~]# true > access.log

3、使用cat、cp、dd实用工具及/dev/null设备来清空文件

在 Linux 中,null设备主要用于丢弃进程不需要的输出流,或者作为输入流。这通常是通过重定向机制完成的。

/dev/null设备文件是一个特殊文件,它会吞噬发送给它的任何输入,或者它的输出与空文件的输出相同。

你可以通过/dev/null使用cat 命令将输出重定向到文件作为输入来清空文件的内容

[root@localhost ~]# cat /dev/null > access.log

也可以使用cp命令将文件内容清空

[root@localhost ~]# cp /dev/null access.log

在下面的命令中,if指的是输入文件,of指的是输出文件。

[root@localhost ~]# dd if=/dev/null of=access.log

4、使用echo命令清空文件

你可以使用带有空字符串的echo命令并将其重定向到文件

[root@localhost ~]# echo "" > access.log

或者

[root@localhost ~]# echo > access.log

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

因此将上面的echo命令的输出重定向到文件中,并使用cat命令查看文件内容时,会打印一个空行

要将null做为输出输入到文件中,使用该标志-n告诉echo不输出换行符。

[root@localhost ~]# echo -n "" > access.log

5、使用truncate命令清空文件

truncate命令将文件的大小缩小或扩展到定义的大小。

你可以将它与-s指定文件大小的选项一起使用。要清空文件内容使用-s 0参数。

[root@localhost ~]# truncate -s 0 access.log

若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如本文“对您有用”,欢迎随意打赏,谢谢!

继续阅读
历史上的今天
8 月
23
Wechat
微信扫一扫,加我!
weinxin
微信号已复制
微信公众号
微信扫一扫,关注我!
weinxin
公众号已复制
Linux最后更新:2024-1-24
小柒博客
  • 本文由 小柒博客 发表于 2022年8月23日 14:53:55
  • 声明:本站所有文章,如无特殊说明或标注,本站文章均为原创。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。转载请务必保留本文链接:https://www.yangxingzhen.com/8202.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

拖动滑块以完成验证