Chế độ truyền "nhị phân" của FTP sao chép chính xác các tệp, byte cho byte. Đơn giản và dễ hiểu.
Tuy nhiên, khi mang các tệp văn bản giữa các hệ điều hành khác nhau, đây có thể không phải là điều bạn muốn - các hệ điều hành khác nhau sử dụng các mã khác nhau để thể hiện các ngắt dòng. Chế độ "ASCII" tồn tại cho mục đích này: nó tự động dịch tất cả các kết thúc dòng từ định dạng của hệ thống nguồn sang đích.
Không chắc chắn về "Tự động", nhưng tôi tưởng tượng rằng phần mở rộng của tệp hoặc một cái gì đó tương tự để quyết định xem đó có phải là tệp văn bản hay không và cố gắng đoán chế độ thích hợp.
Chế độ nào bạn muốn phụ thuộc vào chính xác những gì bạn đang làm với các tệp ... nếu bạn chỉ sao chép chúng để sao lưu chúng, thì có lẽ bạn sẽ muốn sao chép ở chế độ nhị phân để chúng giống hệt nhau khi bạn sau đó khôi phục chúng vào máy chủ windows một lần nữa. Nếu chúng cần có thể sử dụng dưới dạng tệp văn bản (có thể là tệp cấu hình cho chương trình đa nền tảng?) Ở cả hai bên, bạn sẽ muốn sử dụng chế độ ASCII để dịch chúng.
EDIT: Theo như tôi có thể nói, các tệp FTP từ Windows sang Linux sẽ không bao giờ dẫn đến việc ngắt dòng biến mất ... tuy nhiên , nếu bạn sao chép chúng ở chế độ ASCII, sau đó đưa chúng trở lại máy chủ Windows ở chế độ nhị phân, Linux kết thúc dòng kiểu có thể không được nhận ra trên hộp Windows. (Notepad sẽ không nhìn thấy chúng; Wordpad sẽ; YMMV với phần mềm khác.)
(Ngày nay, sự tiện lợi - tự động chuyển đổi kết thúc dòng - có vẻ kỳ quặc trong giao thức cơ bản như FTP. Tuy nhiên, khi FTP được phát minh, gửi tệp văn bản là chuẩn mực và một trong những mục tiêu của giao thức là thực hiện điều này càng dễ càng tốt.)