Linux系统:清除文件内容与两个特殊文件

文章介绍了如何在Linux中清除文件内容,包括使用echo、truncate和cat命令。同时详细解释了/dev/null和/dev/zero两个特殊设备文件的作用,如丢弃输出、提供空字符流,并给出了相关使用示例,如重定向输出和创建初始化空文件。
摘要由CSDN通过智能技术生成

目录

一、理论

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的主要用处是用来创建一个指定长度的用于初始化的空文件,像临时交换文件。

例如使用dd制作U盘启动系统,U盘有16G。制作好启动盘以后,系统只占了2.5G,而其他的空间(将近12G)都无法使用。可以使用如下指令给整个U盘清零。

dd if=/dev/zero of=/dev/sdb count=1 bs=4M

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值