目录
一、理论
1.清除文件内容
2. /dev/null与 /dev/zero
一、理论
1.清除文件内容
(1)使用echo命令
echo > filename
(2)使用truncate命令
该命令会将文件内容清空,并将文件大小设置为0。
truncate -s 0 filename
(3)使用cat命令
该命令会将文件内容清空,但是文件大小不变。
cat /dev/null > filename
2. /dev/null与 /dev/zero
(1)/dev/null
Linux系统中,/dev/null被称为空设备,是一个特殊的设备文件。写入/dev/null,会丢弃一切写入其中的数据(但报告写入操作成功);读取/dev/null,则会立即得到一个EOF。
/dev/null被称为位桶(bit bucket)或者黑洞(black hole)。空设备通常被用于丢弃不需要的输出流,或作为用作输入流的空文件。当你读取它时,空设备会提供无限的空字符(NULL、ASCII NUL、0x00)。
① 禁止标准输出
cat test.sh > /dev/null
或者,1是默认重定向,就是标准输出。
cat test.sh 1> /dev/null
② 禁止标准错误输出
在使用cat $filename
时,如果filename对应的文件不存在,系统肯定会报错: “ cat: filename: 没有那个文件或目录 ” 。假如有错误输出,会通过> /dev/null
输出到黑洞,就不会看到错误输出。
cat test.sh 2> /dev/null
③ 删除文件,通过使用/dev/null软链接
ln -s /dev/null /test.sh
(2)/dev/zero
与/dev/null一样,/dev/zero也是一个伪文件,但它实际上产生连续不断的null流(二进制的零流,而不是ASCII型的),写入它的输出会丢失不见。/dev/zero的主要用处是用来创建一个指定长度的用于初始化的空文件,像临时交换文件。文章来源:https://www.toymoban.com/news/detail-481158.html
例如使用dd制作U盘启动系统,U盘有16G。制作好启动盘以后,系统只占了2.5G,而其他的空间(将近12G)都无法使用。可以使用如下指令给整个U盘清零。文章来源地址https://www.toymoban.com/news/detail-481158.html
dd if=/dev/zero of=/dev/sdb count=1 bs=4M
到了这里,关于Linux系统:清除文件内容与两个特殊文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!