Режимы передачи файлов в FTP используются для решения проблемы разных операционных систем, имеющих разные окончания строки. Идея состоит в том, что если текстовый файл переносится с компьютера с Unix на компьютер с Windows, окончания строк должны быть фиксированными, что означает, что LF должен быть заменен CR LF везде в файле. Обратная операция должна быть выполнена при передаче файла в другом направлении.
Однако, если вы переносите двоичные файлы, вы хотите оставить файл как есть, потому что любые LF в двоичном файле на самом деле не являются окончаниями строк. Поэтому FTP ввел режим ASCII и двоичный режим.
Это все еще проблематичное решение, особенно потому, что режимом по умолчанию является режим ASCII, поэтому, если вы забыли переключить режимы, вы можете изменить ваши двоичные файлы, и они не будут работать. Считается, что различные режимы создают больше проблем, чем решаемых ими проблем.
Итак, SCP просто не предоставляет эту функцию и всегда оставляет файлы как есть. Исправление концов строк предоставляется пользователю с помощью таких инструментов, как dos2unix
и unix2dos
.
По сути, все файлы передаются в «двоичном» режиме, что означает, что окончания строк никогда не меняются.