Das /b
Flag des copy
Befehls behandelt die Dateien als binär (dh als Rohdatenstrom bedeutungsloser Bytes) und kopiert sie Byte für Byte anstelle des Standardverhaltens (oder des /a
Verhaltens), das sie als Textzeilen (mit Zeilenende) behandelt Zeichen, Dateiende usw.)
Sie können Textdateien entweder mit dem Standardtextverhalten oder dem Binärschalter zusammenführen, aber so ziemlich jede Binärdatei funktioniert nicht. Sie können die Bytes nicht einfach aus zwei Binärdateien kopieren und erwarten, dass sie funktionieren, da Binärdateien normalerweise Header , Metadaten und Datenstrukturen habenusw., die das Format der Datei definieren. Wenn Sie eine binäre Kopie erstellen, kopieren Sie einfach alle Bytes so wie sie sind, wodurch diese Strukturen an Stellen platziert werden, an denen sie nicht sein sollten. Wenn Sie sie also öffnen, hat die Analysefunktion Probleme und erkennt, was im Wesentlichen beschädigte Daten sind . Einige Programme ignorieren die Teile, die keinen Sinn ergeben, und zeigen einfach, was sie können (wodurch Stereografie funktioniert), andere geben jedoch einen Fehler aus und beschweren sich, dass die Datei beschädigt ist. Die Fähigkeit, Beschädigungen zu erkennen, hängt vom Dateityp ab.
Lassen Sie uns als Beispiel ein vereinfachtes PDF-Format erfinden:
Byte(s) Meaning
---------------------
File header:
0-1 # of Pages
2-3 Language
4-5 Font
6-EOF Data (each page encoded separately)
Page data:
0-1 Page number
2-3 # of characters on page
4-#chars Letters contained on the page
Wie Sie sehen können, enthält jede Datei einen Header auf Dateiebene mit einigen allgemeinen Informationen, gefolgt von Datenblöcken für jede Seite, die die Seitendaten enthält. Wenn Sie dann zwei Dateien mit jeweils einer Seite als Binärdateien zusammenführen, erstellen Sie nicht eine zweiseitige Datei, sondern eine beschädigte Datei, die mit einer Seite beginnt und dann eine Menge Junk enthält (die Datei) Header macht keinen Sinn, wenn das Programm versucht, Seite zwei zu lesen).
Das gleiche passiert für Ihre MP3s. Wenn Sie sie so kombiniert haben, bleiben die ID3-Tags am Anfang und / oder Ende der zweiten Datei erhalten, und wenn der Player versucht, das nächste Bild zu lesen, erwartet er Audiodaten, findet aber den Header der zweite Datei, die nicht dem erwarteten Format für Audiodaten entspricht, daher weiß sie nicht, was zu tun ist. Einige Player spielen den Header als Audiodaten ab (die wahrscheinlich als statische Daten / Rauschen / Pops / usw. Wiedergegeben werden), andere schneiden den Ton bis zum nächsten richtigen Frame ab, andere hören möglicherweise die Wiedergabe des Songs ganz auf und andere stürzen möglicherweise sogar ab .
Der copy
Befehl kennt keine anderen Dateitypen als Nur-Text (und selbst dann nur ASCII-Text), sodass nur Nur-Text korrekt damit kombiniert werden kann. Binärdateien müssen mit einem Editor kombiniert werden, der weiß, wie der Inhalt richtig analysiert und interpretiert wird.