小知识:教你快速清空 Linux 中的大文件

%小知识:教你快速清空 Linux 中的大文件-猿站网-插图

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

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

# > access.log

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

这里我们将使用一个符号,:是一个shell内置命令,本质上等同于true命令

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

# : > access.log OR # true > access.log

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/nullof=access.log

4. 使用 echo 命令清空文件

在这里,你可以使用带有空字符串的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

原文链接:https://mp.weixin.qq.com/s/8BNkNxDdLD8P-ScBQ6WeHQ

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Linux 系统管理器 systemd 的 2021:6700+ commit、新增 27 万行代码

2023-4-5 8:17:03

建站知识

小知识:利用shell find命令删除过期的缓存方法示例

2023-4-5 8:33:41

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索