2015-12-11 49 views
0

當通過WinSCP FTP工具傳輸文件時,我遇到了一個奇怪的問題。 我從服務器下載了一個shell腳本文件,並做了一些小修改。通過WinSCP工具將該文件上載到同一臺UNIX服務器上。通過FTP傳輸文件時TEXT模式和ASCII模式之間的區別?

當我選擇傳輸設置爲二進制,Shell腳本無法正常工作並失敗。即使生成的日誌文件沒有打開。

當我選擇傳輸設置爲TEXT它工作正常。

另外,當我設置在終端中通過FTP命令傳輸設置爲ASCII,即使它不起作用。

基於以上問題的基礎上,我有如下擔憂:

  • 差異TEXT和ASCII傳輸之間模式轉移模式 ?
  • 通過FTP通過FTP命令傳輸文件 與使用FTP工具(如WinSCP,FileZilla,FireFTP)之間的區別?

回答

0

我認爲它與Newlines,Carriage Returns和NL/CR組合之間的翻譯有關。即將文本文件從DOS機器傳送到UNIX機器,ASCII模式將轉換爲正確的翻譯,而「TEXT」模式(我相信它實際上是「二進制」模式)只是按原樣傳送,不進行翻譯。

+0

「二進制」和「文本」是兩種不同的模式,因爲這兩個選項都是傳輸設置中列出的選項。 – ursitesion

0

「text」和「ascii」傳輸模式沒有區別。這些只是在相同模式下可互換使用的兩個名稱。

GUI FTP客戶端和Windows命令行FTP客戶端的文本/ ASCII模式應該沒有區別。

雖然可能是一些實現細節,可能會使特定服務器的差異。

相關問題