Der Übertragungsmodus "Binär" von FTP kopiert Dateien genau byteweise. Einfach und unkompliziert.
Wenn Sie Textdateien zwischen verschiedenen Betriebssystemen übertragen, ist dies möglicherweise nicht das, was Sie möchten. Verschiedene Betriebssysteme verwenden unterschiedliche Codes, um Zeilenumbrüche darzustellen. Zu diesem Zweck gibt es den "ASCII" -Modus: Er übersetzt automatisch alle Zeilenenden vom Format des Quellsystems in das des Ziels.
Nicht sicher über "Auto", aber ich stelle mir vor, dass die Dateierweiterung oder etwas ähnliches zu entscheiden, ob es eine Textdatei ist, und versucht, den entsprechenden Modus zu erraten.
Welcher Modus gewünscht wird, hängt genau davon ab, was Sie mit den Dateien tun. Wenn Sie sie nur kopieren, um sie zu sichern, möchten Sie sie wahrscheinlich im Binärmodus kopieren, damit sie genau gleich sind, wenn Sie können sie später erneut auf dem Windows-Server wiederherstellen. Wenn sie auf beiden Seiten als Textdateien (möglicherweise als Konfigurationsdateien für ein plattformübergreifendes Programm?) Verwendet werden sollen, sollten Sie sie im ASCII-Modus übersetzen.
EDIT: Soweit ich das beurteilen kann, sollte FTPing Dateien von Windows auf Linux nie in Zeilenumbrüchen führen verschwinden ... aber , wenn man sich im ASCII - Modus zu kopieren, und dann bringt wieder in Binär - Modus auf den Windows - Server, die Linux -Stil-Linienenden werden auf der Windows-Box möglicherweise nicht erkannt. (Notepad wird sie nicht sehen; Wordpad wird; YMMV mit anderer Software.)
(Heutzutage mag eine solche Annehmlichkeit - das automatische Konvertieren von Zeilenenden - in einem so grundlegenden Protokoll wie FTP seltsam erscheinen. Als FTP erfunden wurde, war das Senden von Textdateien jedoch die Norm, und eines der Ziele des Protokolls bestand darin, dies zu erreichen das ist so einfach wie möglich.)
Es gibt in der Tat Unterschiede, und sie werden Ihre Nicht-Klartext-Dateiübertragungen beeinträchtigen, sofern Sie nicht die Binäroption verwenden - verwenden Sie im Allgemeinen immer, wenn dies in Ordnung ist :)
quelle
Von welchem Betriebssystem übertragen Sie Dateien? Linux / Unix verwenden andere Zeilenumbrüche als Windows. Wenn Sie also eine Datei auf einem Linux-Computer erstellen und unter Windows öffnen, sieht dies möglicherweise komisch aus. Es gibt Dienstprogramme, um dies zu korrigieren, aber meiner Erfahrung nach ist es in Ordnung, wenn Sie Wordpad unter Windows anstelle von Editor verwenden.
quelle
dos2unix
und sehen Sie, ob dies die Zeilen korrigiertWindows und Unix haben unterschiedliche Bytes am Zeilenende (Windows a 0D 0A hex, Unix nur a 0A). Beim Übertragen von Dateien im Binärmodus werden die Bytes einer Datei unverändert von einem Computer verschoben. Dies ist für Binärformate (z. B. ZIP-Dateien, Bilder usw.) erforderlich, kann jedoch zu Problemen mit Textdateien führen: ZB zeigt notepad.exe unter Windows eine Textdatei mit nur Zeilenumbrüchen im Unix-Stil als eine lange Zeile an, ein Unix-Editor wird möglicherweise am Ende jeder Zeile ^ M angezeigt, wenn der Windows-Stil angezeigt wird.
Technisch gesehen müssen Sie für Binärformate (zip, jpg, png und endlose andere) FTP auf BINARY und für Textformate (HTML, PHP, CGI usw.) auf ASCII einstellen.
Die meisten guten FTP-Programme haben auch eine automatische Einstellung, was bedeutet, dass sie den Modus (BINARY oder ASCII) in Abhängigkeit von bekannten Dateierweiterungen bestimmen. Beispielsweise wird die Übertragung für JPG-Dateien automatisch auf BINARY umgestellt und eine PHP-Datei in ASCII gesendet / empfangen Modus.
quelle