«Двоичный» режим передачи FTP копирует файлы точно, байт за байтом. Просто и понятно.
Однако при переносе текстовых файлов между разными операционными системами это может быть не тем, что вам нужно - разные операционные системы используют разные коды для представления переносов строк. Для этого существует режим «ASCII»: он автоматически переводит все окончания строк из формата исходной системы в пункт назначения.
Не уверен насчет «Авто», но я представляю, что похоже, что расширение файла или что-то подобное решает, является ли это текстовым файлом, и пытается угадать соответствующий режим.
Какой режим вам нужен, зависит от того, что именно вы делаете с файлами ... если вы просто копируете их для резервного копирования, то вам, вероятно, захочется копировать в двоичном режиме, чтобы они были точно такими же, когда Вы позже восстановите их на сервер Windows снова. Если их необходимо использовать в виде текстовых файлов (возможно, в виде файлов конфигурации для кроссплатформенной программы?) С обеих сторон, вам потребуется использовать режим ASCII для их перевода.
EDIT: Насколько я могу судить, по протоколу FTP файлы из Windows , в Linux никогда не должны приводить к разрывам линии исчезают ... Однако , если вы копируете их в режиме ASCII, а затем вернуть их обратно на сервер Windows , в двоичном режиме, Linux Окончания строк в стиле могут не распознаваться в окне Windows. (Блокнот их не увидит; Wordpad увидит; YMMV с другим программным обеспечением.)
(Сегодня такое удобство - автоматическое преобразование концов строк - может показаться странным в таком базовом протоколе, как FTP. Однако когда был изобретен FTP, отправка текстовых файлов была нормой, и одной из целей протокола было это как можно проще.)
Различия действительно есть, и они будут возиться с передачей файлов не в текстовом формате, если вы не используете двоичную опцию - обычно всегда используйте, если хорошо :)
источник
Из какой операционной системы вы переносите файлы в / из? Linux / Unix используют разные переводы строк, чем Windows. Так что если вы сгенерируете файл на компьютере с Linux и откроете его в Windows, это может выглядеть странно. Есть утилиты для исправления этого, хотя по моему опыту, если вы используете WordPad на Windows вместо блокнота, все будет в порядке.
источник
dos2unix
и посмотреть, исправит ли это строкиWindows и Unix имеют разные байты в конце строк (Windows - гекс 0D 0A, Unix - просто 0A). При передаче файлов в двоичном режиме байты файла будут перемещены с одного компьютера без изменений. Это требуется для двоичных форматов (например, ZIP-файлов, изображений и т. Д.), Но может привести к проблемам с текстовыми файлами: например, notepad.exe в Windows отобразит текстовый файл с разрывами строк в стиле Unix в виде одной длинной строки, редактор Unix может показывать ^ M в конце каждой строки при просмотре стиля Windows.
Таким образом, технически для двоичных форматов (zip, jpg, png и других) вам нужно установить FTP на BINARY, в то время как для текстовых форматов (HTML, PHP, CGI и т. Д.) Вам нужно установить его в ASCII.
Большинство хороших программ FTP также имеют автоматическую настройку, что означает, что они будут определять режим (BINARY или ASCII) в зависимости от хорошо известных расширений файлов, например, он автоматически переключит передачу для файла JPG в BINARY и отправит / получит файл PHP в ASCII. Режим.
источник