Code: Alles auswählen
root@k4l:~# dd if=/dev/null of=Null bs=512 count=8
0+0 Datensätze ein
0+0 Datensätze aus
0 Bytes kopiert, 0,000238726 s, 0,0 kB/s
root@k4l:~#
Code: Alles auswählen
root@k4l:~# dd if=/dev/null of=Null bs=512 count=8
0+0 Datensätze ein
0+0 Datensätze aus
0 Bytes kopiert, 0,000238726 s, 0,0 kB/s
root@k4l:~#
Code: Alles auswählen
of=Null
aber ganz sicher nicht mit of=0 !
Diese Erklaerung stimmt technisch so nicht ganz ... auch wenn das Richtige gemeint war. Ich will das mal genauer und exakter darlegen.hikaru hat geschrieben:20.06.2023 16:26:47/dev/null ist im Gegensatz zu /dev/zero Null-terminiert. D.h., das erste und einzige Zeichen, das du daraus lesen wirst ist ein Null-Byte.
/dev/null ist eine leere Datei. Wenn man daraus liest, dann bekommt man kein Null-Byte, sondern es kann kein einziges Byte gelesen werden; read(2) liefert direkt den Wert 0 zurueck, also dass es 0 Bytes gelesen hat, was end-of-file bedeutet. (Nachtrag: /dev/null verhaelt sich beim Lesen wie jede andere leere Datei. Der Unterschied liegt beim Schreiben, denn alles was man reinschreibt wird einfach verworfen.)Manpage null(4) hat geschrieben: Reads from the null special file always return end of
file (i.e., read(2) returns 0), whereas reads from zero
always return bytes containing zero (\0 characters).
Der Befehl hat korrekt funktioniert: Du hast aus einer leeren Datei (/dev/null) gelesen und in die Datei `Null' im aktuellen Verzeichnis geschrieben. Das hast du maximal 8 Bloecke a 512 Bytes lange machen wollen. Da die Inputdatei leer ist, sind keine Bytes kopiert worden. Es ist eine leere Datei `Null' angelegt worden. Alles perfekt in Ordnung.wolf49 hat geschrieben:20.06.2023 16:18:07warum funktioniert das nicht ?Code: Alles auswählen
root@k4l:~# dd if=/dev/null of=Null bs=512 count=8 0+0 Datensätze ein 0+0 Datensätze aus 0 Bytes kopiert, 0,000238726 s, 0,0 kB/s root@k4l:~#
doch, Null ist der Dateiname, 4MB. und leer.aber ganz sicher nicht mit of=Null !
Das output file (of) heißt Null und wird im aktuellen Verzeichnis angelegt.
Kommt darauf an wie du ``leer'' definierst.wolf49 hat geschrieben:20.06.2023 17:48:06doch, Null ist der Dateiname, 4MB. und leer.aber ganz sicher nicht mit of=Null !
Code: Alles auswählen
:-Q dd if=/dev/zero of=Null bs=512 count=8
8+0 records in
8+0 records out
4096 bytes (4.1 kB) copied, 5.6952e-05 s, 71.9 MB/s
:-Q ls -l Null
-rw-r--r-- 1 meillo meillo 4096 Jun 20 18:09 Null
:-Q du -sh Null
4.0K Null
:-Q stat Null
File: `Null'
Size: 4096 Blocks: 8 IO Block: 4096 regular file
Device: a150b6a1h/2706421409d Inode: 160407 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ meillo) Gid: ( 1000/ meillo)
Access: 2023-06-20 18:09:54.430894696 +0200
Modify: 2023-06-20 18:09:54.431894719 +0200
Change: 2023-06-20 18:09:54.431894719 +0200
Birth: -
:-Q touch Hole
:-Q truncate -s 4K Hole
:-Q ls -l Hole
-rw-r--r-- 1 meillo meillo 4096 Jun 20 18:10 Hole
:-Q du -sh Hole
0 Hole
:-Q stat Hole
File: `Hole'
Size: 4096 Blocks: 0 IO Block: 4096 regular file
Device: a150b6a1h/2706421409d Inode: 160408 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ meillo) Gid: ( 1000/ meillo)
Access: 2023-06-20 18:10:26.649614523 +0200
Modify: 2023-06-20 18:10:33.438766205 +0200
Change: 2023-06-20 18:10:33.438766205 +0200
Birth: -