linux - 伪设备文件的重要性是什么?我应该在什么情况下使用它们?

标签 linux file

我正在浏览 Device_files并遇到伪设备文件。我确实理解他们不在场的概念。但是我不明白的是需要这样的文件吗?我应该在什么情况下使用它们? 另外,伪设备文件在什么样的应用程序中会有帮助?

最佳答案

  1. /dev/null 当您想丢弃标准流之一时,主要用于 shell 脚本,例如: 如果您不是 root 尝试:

find/root -name '*.cpp' 2>/dev/null

然后:

find/root -name '*.cpp'

第一个不会给你任何错误消息,因为它们被打印到标准错误流(表示为文件描述符编号 2)并且这个流被重定向到一个无底洞(又名/dev/null)

  1. /dev/zero 如果您想读取任意数量的零,例如您可能想要创建一个充满零的文件(再次使用 shell 脚本)或(更常见的)将某些设备(想想:磁盘分区)归零
  2. /dev/random/dev/urandom 当需要(相对)好的随机数据源时经常使用(例如,当您想要“播种”某些算法时,在密码学中使用)。这特别方便,因为您有开箱即用的伪随机生成器。
  3. /开发/完整 对测试非常有用:例如如果您想测试您的应用程序在磁盘空间不足时的行为方式(实际上没有填满您的所有磁盘:))

关于linux - 伪设备文件的重要性是什么?我应该在什么情况下使用它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9430320/

相关文章:

c++ - 如果我不关闭,ifstream 会导致内存泄漏吗?

java - 使用多线程读取单个文件

python - 如何优化大文件的读取和处理?

c - 在 C 中使用 fopen() 使用字符数组作为文件名

html - Libreoffice 将 html 转换为 xls 或 xlsx

linux - echo $variable 在 cron 中不起作用

sql-server - 从运行在 GNU/Linux 上的 Tcl 访问 Microsoft SQL Server

linux - Redis 没有dump.rdb 只有一个temp.rdb?

python - 在 Linux 中创建安装程序包

c - C 中的多个源文件- makefile 究竟如何工作?