Linux下你还知道这些特殊文件?
我们都知道Linux下一切皆文件,还知主要有:
- 普通文件 d 目录 l 符号链接 s 套接字 b 块设备 c 字符设备 p 管道这么几种文件。道特

这里的殊文前缀字符可以通过ls命令观察到:
$ ls -l test.log -rw-r--r-- 1 root root 33 Nov 17 17:03 test.log它的结果最前面是-,因此它是还知普通文件。
$ ls -al /dev/null crw-rw-rw- 1 root root 1,道特 3 Sep 11 20:33 /dev/null它的结果最前面是c,因此它是殊文字符设备。文件简单介绍几种字符设备文件,还知它能在我们功能测试的道特时候提供很好的帮助。
/dev/null
/dev/null 可无限接收数据,殊文你可以认为是还知一个黑洞,因此如果我们需要丢弃某些终端输出,道特可以重定向到这里:
$ echo "shouwangxiansheng" > /dev/null所以如果你有不需要的殊文数据可以尽情的往这里写。
/dev/full
它在读取时会读取到连续的站群服务器还知NUL(零值)字节流,而在写入的道特时候,会返回磁盘空间已满的殊文结果,后者在测试你的程序的时候会有帮助,即测试磁盘满的场景:
$ echo "bianchengzhuji" > /dev/full -bash: echo: write error: No space left on device/dev/zero
和/dev/null类似,向其中写入时会丢弃所有数据,但是读取时,会产生NUL(零值)字节流。
$ cat /dev/zero |od -x 0000000 0000 0000 0000 0000 0000 0000 0000 0000/dev/random
/dev/random可以提供随机数据流,它保证数据的随机性,但是读取时会造成等待,例如:
$ cat /dev/random | od -x 0000000 2b07 daac 42f4 e1fd fb62 2098 870e e0af 0000020 3022 2099 e5da 4e1c d6db 548b a979 1217 0000040 3777 bb6a 957d 1279 ab29 e8a4 6a36 ecca 0000060 39ec 2285 126c 30ea ea67 1526 5e4a 2dd9稍过会才会出现数据,为了便于查看,我们利用od命令查看其十六进制内容。
/dev/urandom
从名字就可以看出来,是亿华云用来产生随机数据的。它的产生速度很快,但是数据的随机性不如/dev/random
cat /dev/urandom | od -x 0547560 f43e 696a 8936 2b27 36c8 4446 2802 1d47 0547600 b8af 249d aae9 edbf 8971 b1d1 0c73 3e2d 0547620 237b 9a81 6348 cb2a 1972 4486 028a 3573 0547640 1690 c388 64e1 aec1 d5f4 1964 bbb9 192f 0547660 f242 7194 51ba 62a3 fc13 ff53 fb50 e3d8 0547700 ef32 3658 b335 75ee 62de 4096 6468 c979 0547720 01b9 c233 878d 12fc 5cfa 5691 89e1 e1f9/dev/pts
/dev/pts是远程登陆(telnet,ssh等)后创建的控制台设备文件所在的目录。有什么用呢?举个例子,你打开一个终端,获取到当前的pts:
$ tty /dev/pts/0然后你又打开一个,输入:
$ echo "hahahaha">/dev/pts/0你就会发现内容被打印到前面一个终端了。通常我们运行一个程序,其printf的打印都会打印在当前终端。
总结
实际上在/dev下还有非常多的特殊文件,但是不一一介绍。以上特殊文件在一定场合下能帮助我们开发或者测试。
IT技术网相关文章
解决新电脑宽带错误651的常见问题(错误651解决方案及关键提示)
摘要:新购买的电脑在设置宽带连接时,可能会遇到错误651的问题。本文将介绍一些常见的解决方案和关键提示,帮助读者解决这一问题。1.检查物理连接是否正常物理连接是指电脑和宽带设...2025-11-05
随着数据的日益增多,在架构上不得不分库分表,提高系统的读写速度,但是这种架构带来的问题也是很多,这篇文章就来讲一讲跨库/表分页查询的解决方案。架构背景笔者曾经做过大型的电商系统中的订单服务,在企业初期2025-11-05- 大家好,我是煎鱼。我有一个朋友,,开开心心入职,想着施展拳脚,第一个任务就是对老旧的二进制文件进行研究。他一看,这文件,不知道是编译器用什么参数,是怎么编译出来的,环境不知道是什么,更不知道来自什么代2025-11-05
大家好,我是 polarisxu。Go 语言的诞生,伴随着出现了 Gopher。现在 Go 爱好者通常自称为 Gopher。实际上,Gopher 最开始只是表示 Go 的吉祥物:gopher那 Gop2025-11-05金立M8手机——功能强大,性能出色(一款令人惊艳的智能手机,满足你的各种需求)
摘要:随着科技的不断发展,智能手机已经成为现代人生活中不可或缺的一部分。在众多的手机品牌中,金立M8以其出色的功能和卓越的性能脱颖而出。本文将详细介绍金立M8的各项特点和功能。一...2025-11-05
01 先看来龙, 再谈去脉数据仓库概念兴起于上世纪90年代,随着IT系统的大发展, 人们发现应用系统越来越多, 但是对于经营决策的问题, 反而越来越难以获取准确的决策信息。据说有个笑话, 发生在2002025-11-05

最新评论