2015-02-23 153 views
2

我有一大堆供應商可以使用它們的FTP來下載其產品的圖像。其中一些人喜歡將它們放入多個子文件夾中,使用集合或樣式名稱,然後使用sku。例如,他們將文件夾結構,如:使用SSH /命令行FTP服務器到服務器

Main folder 
---> Collection A 
------> Sku A 
----------> SKUApicture1.jpg, SKUApicture2.jpg 
------> sku B 
----------> SKUBpicture1.jpg, SKUBpicture2.jpg 

---> Collection B 
------> Sku C 
----------> SKUCpicture1.jpg, SKUCpicture2.jpg 
------> sku D 
----------> SKUDpicture1.jpg, SKUDpicture2.jpg 

到現在爲止,我發現它最簡單的登錄到通過SSH我的服務器,瀏覽到我想要的文件夾,然後登錄到我的供應商的FTP,在哪一點我把用戶名稱PW並導航到我想要的文件夾,然後使用mget獲取所有圖像。如果所有(或大部分)文件都在1個文件夾中,這很簡單。

問題是mget將不會採取和文件夾或子文件夾,它只會採取給定文件夾內的文件。在上面的示例中,我的供應商擁有超過10個文件夾,每個文件夾有100個以上的子文件夾,因此無法導航到每個文件夾。

另外,我處理在業內不是高科技薩維,因此要求他們「科技人」啓用/允許SCPSFTP,或rsync的等,很可能不是一個選項。

本地下載所有圖像並重新上傳到我的服務器也是不實際的,因爲這個文件夾超過10GB。

我正在尋找一個命令(MGET或其他方式),使我把所有文件和子文件夾,如,直複製到我的服務器(通過SSH )。

感謝

注:因爲我試過rsync的,卻得到了一個錯誤,告訴我,這是不是與該命令兼容這個特定的服務器。我懷疑我有錯誤的命令,但如果你想正確的方式rsync我會更樂意嘗試一遍,並提供確切的錯誤

回答

1

您是否嘗試過類似

wget -r ftp://username:[email protected]/ 

應該遞歸從遠程FTP得到所有的文件。

+0

登錄,現在正在嘗試此操作,它似乎正在工作。很快會報告回來。 – 2015-02-23 22:12:10

+0

這裏是鑰匙嗎?意思是,如果我通過ftp登錄並使用wget,它會起作用嗎?我相信我之前曾嘗試過wget(一旦已經登錄),並且它給了我一個錯誤,說明遠程服務器無法識別wget – 2015-02-23 22:14:53

+0

@JoshB wget的行爲就像一個普通的瀏覽器。如果你可以用瀏覽器下載,你可以用wget來完成。 – Tk421 2015-02-23 22:21:50

0

你有沒有考慮過使用SFTP?你說過FTP的工作方式,而SFTP的工作方式完全相同。具有SFTP支持的FTP客戶端的行爲方式完全相同,但它使用SSH進行連接。

+0

另一臺服務器將不允許使用SFTP – 2015-02-23 22:10:01