Режим передачи файлов по умолчанию в SCP - PullRequest
12 голосов
/ 05 января 2012

Я хочу знать, какой режим используется по умолчанию (ASCII или двоичный, например, FTP) при передаче файлов с использованием SCP.

Существует ли какая-либо концепция режима файла в SCP?Как это работает?

Ответы [ 2 ]

34 голосов
/ 05 января 2012

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

Однако, если вы переносите двоичные файлы, вы хотите оставить файл как есть, потому что любые LF в двоичном файле на самом деле не являются окончаниями строк. Поэтому FTP ввел режим ASCII и двоичный режим.

Это все еще проблематичное решение, особенно потому, что режимом по умолчанию является режим ASCII, поэтому, если вы забыли переключить режимы, вы можете изменить ваши двоичные файлы, и они не будут работать. Считается, что различные режимы создают больше проблем, чем решаемых ими проблем.

Итак, SCP просто не предоставляет эту функцию и всегда оставляет файлы как есть. Исправление концов строк предоставляется пользователю с помощью таких инструментов, как dos2unix и unix2dos.

По сути, все файлы передаются в «двоичном» режиме, что означает, что окончания строк никогда не меняются.

5 голосов
/ 05 января 2012

По моим сведениям нет режима для scp. Смотрите эту man страницу для более подробной информации

...