답변:
FTP의 "이진"전송 모드는 바이트 단위로 파일을 정확하게 복사합니다. 간단하고 간단합니다.
그러나 다른 운영 체제간에 텍스트 파일을 가져올 때는 원하는 것이 아닐 수도 있습니다. 운영 체제마다 다른 코드를 사용하여 줄 바꿈을 나타냅니다. "ASCII"모드는이 목적을 위해 존재합니다. 모든 행 끝을 소스 시스템 형식에서 대상 형식으로 자동 변환합니다.
"자동"에 대해서는 잘 모르지만 파일의 확장자 또는 비슷한 것이 텍스트 파일인지 여부를 결정하고 적절한 모드를 추측하려고합니다.
원하는 모드는 파일을 사용하여 수행하는 작업에 따라 다릅니다. 파일을 백업하기 위해 복사하는 경우 바이너리 모드로 복사하여 파일이 정확히 똑같을 수 있습니다. 나중에 Windows 서버로 다시 복원하십시오. 양쪽에서 텍스트 파일 (예 : 크로스 플랫폼 프로그램의 구성 파일)로 사용할 수 있어야하는 경우 ASCII 모드를 사용하여 번역해야합니다.
편집 : 내가 알 수있는 한 Windows에서 Linux로 FTP 파일을 보내면 줄 바꿈이 사라지지 않아야합니다 ... 그러나 ASCII 모드로 복사 한 다음 Linux를 이진 모드로 Windows 서버 로 가져 오면 Linux 스타일 상자 끝은 Windows 상자에서 인식되지 않을 수 있습니다. (메모장은 표시되지 않습니다. 워드 패드는 YMMV (다른 소프트웨어 포함)입니다.)
(오늘날 줄 끝을 자동으로 변환하는 것과 같은 편의성은 FTP와 같은 기본 프로토콜에서 이상하게 보일 수 있습니다. 그러나 FTP가 발명되었을 때 텍스트 파일을 보내는 것이 표준이었고 프로토콜의 목표 중 하나는 가능한 한 쉽게)
파일을주고받는 운영 체제는 무엇입니까? Linux / Unix는 Windows와 다른 줄 바꿈을 사용합니다. 따라서 Linux 컴퓨터에서 파일을 생성하고 Windows에서 파일을 열면 이상하게 보일 수 있습니다. 메모장 대신 Windows에서 워드 패드를 사용하는 경우 내 경험으로는이를 수정하는 유틸리티가 있습니다.
dos2unix
하고 그것이 줄을 수정하는지 확인하십시오
Windows와 Unix는 줄 끝에서 다른 바이트를 갖습니다 (Windows 0D 0A 16 진수, Unix는 0A). 이진 모드로 파일을 전송할 때 파일의 바이트는 한 컴퓨터에서 변경되지 않고 이동합니다. 이진 형식 (예 : ZIP 파일, 이미지 등)에 필요하지만 텍스트 파일에 문제가 발생할 수 있습니다. Windows 스타일을 볼 때 모든 줄 끝에 ^ M이 표시 될 수 있습니다.
따라서 기술적으로 이진 형식 (zip, jpg, png 및 끝없는 기타)의 경우 FTP를 BINARY로 설정해야하고 텍스트 형식 (HTML, PHP, CGI 등)의 경우 ASCII로 설정해야합니다.
대부분의 좋은 FTP 프로그램은 자동 설정을 가지고 있습니다. 즉, 잘 알려진 파일 확장자에 따라 모드 (BINARY 또는 ASCII)를 결정합니다. 예를 들어 JPG 파일의 전송을 BINARY로 자동 전환하고 ASCII로 PHP 파일을 보내거나받습니다. 방법.