教你快速清空 Linux 中的大文件
2023-03-14 11:23:08 时间
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/null of=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
相关文章
- 改善嵌入式软件开发环境的三大解决方案
- 泼冷水!Web3.0的未来或许只是一个流行语
- 在.Net 7源码中bool代码优化
- 一篇文章带你了解Go语言基础之接口
- 教妹子学 Go 并发原语:啥是 Semaphore ?
- 一文聊透软件设计模式这件事儿
- 将音频编解码器添加到嵌入式系统的五个技巧
- 一文读懂测试自动化
- Web 前端需不需要刷算法?
- 面试突击:为什么Start方法不能重复调用?而Run方法却可以?
- 2021 最流行的十大 JS 框架,前三又换牌了,值得关注的是 Svelte 和 Solid 的崛起!
- Go语言切片面试真题八连问
- Go 中的那些语法糖
- CI/CD管道在软件开发中的五大积极作用
- Golang 语言的多种变量声明方式和使用场景
- 从零打造一款支持SSR的全栈CMS系统
- LeetCode初中级算法题解:排序算法介绍篇
- 跟着官网学Go之基于Gin开发一个简单的RESTful API
- New 一个对象在堆中的历程
- 跟着官网学Go之Golang环境准备