楚狐在线 - 资讯杂烩
资讯杂烩   在线工具   益智游戏   影音娱乐   网站导航

/dev/null和/dev/zero的区别


  /dev/null/dev/zero都是Linux/Unix系统中特殊的设备文件,但它们的行为和用途有本质区别。
  简单来说:
  /dev/null数据黑洞。写入它的数据会永远消失;读取它则会立即得到文件结束符(EOF)。核心思想:扔掉不需要的东西,或者得到“空”的东西。在命令行中,你经常想只执行一个命令,而不关心它的输出,或者不想让输出信息刷屏。这时,你可以将标准输出(stdout)和标准错误输出(stderr)重定向到/dev/null,如测试从指定服务器下载一个文件的速率,并不保存当前下载的文件

wget -O /dev/null https://speed.cloudflare.com/__down?bytes=1000000000

  /dev/zero零字节源。写入它的数据会永远消失(行为类似/dev/null);读取它会得到无限个、连续的零字节(0x00)。核心思想:获取一堆二进制的零。你可以使用dd命令从/dev/zero读取数据,并写入一个新文件,从而创建一个充满零字节的、指定大小的文件,如创建一个1MB大小、内容全为零的文件

dd if=/dev/zero of=zero_file.bin bs=1M count=1
其中:
 · if=/dev/zero:输入文件(input file)是 /dev/zero。
 · of=zero_file.bin:输出文件(output file)是 zero_file.bin。
 · bs=1M:每次读写的数据块大小是 1 MiB。
 · count=1:只读写一个数据块。

  记住这个简单的比喻
  /dev/null像一个碎纸机,你扔进去的东西就没了,并且从里面什么也拿不出来。
  /dev/zero像一个无限的零钞票打印机,你扔进去的东西也没了(碎纸机功能),但你可以随时从里面取出无数张面值为“零”的钞票。

返回首页    发布日期:2025年09月28日

Copyright © 2026  楚狐在线  All Rights ReservedLA反馈留言  友情赞助