/ Dev / null ve / dev / zero arasındaki fark


27

Yönlendirme çalışırken /dev/nullve /dev/zeroçıkış atılır. Her ikisi de görünüyor /dev/nullve /dev/zerotüm girdileri kabul edip atın. Peki, /dev/nullve arasındaki fark /dev/zeronedir?


6
rm -f /dev/zero ; echo -n 111111111111 > /dev/zero* kaçar *
joeytwiddle

Yanıtlar:


51

Evet, tüm girişleri hem kabul eder hem de reddeder, ancak çıkışları aynı değildir:

  • /dev/nullçıktı üretmez .
  • /dev/zerosürekli bir NULL (sıfır değer) bayt akışı üretir .

Sen yürüterek farkı görebilirsiniz cat /dev/nullve cat /dev/zero.

  • Deneyin cat /dev/null > fileve boş bulacaksınız file.

  • Şimdi deneyin cat /dev/zero > file, dosyanın boyutunu izlerken ( watch -n 1 du -h file) sürekli artar. Bunun sebebi, okumanın /dev/zerosonsuz bir \0(null) karakter akımı vermesidir .

ddFarkı daha uygun şekilde görselleştirmek için kullanın :

$ dd if=/dev/null of=file count=10
0+0 records in
0+0 records out
0 bytes (0 B) copied, 0.000276193 s, 0.0 kB/s

$ dd if=/dev/zero of=file count=10
10+0 records in
10+0 records out
5120 bytes (5.1 kB) copied, 0.00090775 s, 5.6 MB/s

/dev/zero sahte dosyaları oluşturmak veya takas etmek için kullanılır.

Ayrıca ziyaret edin:



2
Kayda değer: mmapping /dev/zero, MAP_PRIVATEisimsiz bir hafıza haritası elde etmenin "taşınabilir" bir yoludur (uzantıların olmadığı durumlarda MAP_ANON).
nneonneo

6
Belki sıradan bir okuyucunun açık değildir adildir nasıl /dev/null hayır çıktı üretir: Bu EOF hemen bildirir.
Peter - Monica

Herkese veren bir cihaz var mı?
Aaron Franke
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.