Lorsque vous essayez de rediriger vers /dev/null
et /dev/zero
, la sortie vers laquelle il est rejeté. Il semble à la fois /dev/null
et /dev/zero
accepter et abandonner toutes les entrées. Alors, quelle est la différence entre /dev/null
et /dev/zero
?
27
rm -f /dev/zero ; echo -n 111111111111 > /dev/zero
* s'enfuit *Réponses:
Oui, les deux acceptent et suppriment toutes les entrées, mais leur sortie n'est pas la même:
/dev/null
ne produit aucune sortie ./dev/zero
produit un flux continu d'octets NULL (valeur nulle) .Vous pouvez voir la différence en exécutant
cat /dev/null
etcat /dev/zero
.Essayez
cat /dev/null > file
et vous trouverez un videfile
.Essayez maintenant
cat /dev/zero > file
, tout en regardant la taille du fichier (watch -n 1 du -h file
) augmenter continuellement. En effet, la lecture de/dev/zero
donne un flux infini de caractères\0
(nuls).Utilisez
dd
pour visualiser la différence de manière plus appropriée:/dev/zero
est utilisé pour créer des fichiers fictifs ou des échanges.Visitez également:
la source
mmap
ping/dev/zero
avecMAP_PRIVATE
est le moyen "portable" d'obtenir un mappage de mémoire anonyme (en l'absence d'extensions commeMAP_ANON
)./dev/null
ne produit aucune sortie: Il signale EOF immédiatement.