2017-04-26 241 views
1

我正在使用下面的代碼將文件從我的FTP服務器傳輸到我的本地機器,它工作正常。使用批處理文件和WinSCP從FTP服務器下載文件到文件服務器(共享文件夾)

"C:\Program Files (x86)\WinSCP\WinSCP.com" /command^
    "open ftp://rnandipati:[email protected]/kgptel/"^
    "lcd ""C:\\rnandipati\KGP\File History"""^
    "get *.xls>1D"^
    "rm *.xls<1D"^
    "exit" 

現在,我使用此路徑

\\fs01\\Reporting\KGP\File History 

當我把這個路徑來代替我的本地目錄路徑的訪問我的服務器,它顯示了一個錯誤,系統找不到指定的文件和錯誤更改目錄。

謝謝。

+0

*「我用這個路徑訪問我的服務器'FS01 \報告\ KGP \ File History'「* - 前面不應該有\\? - 向我們展示如何使用此路徑訪問您的服務器! +向我們展示具有此路徑的WinSCP腳本的外觀以及該腳本生成的確切錯誤消息! –

+0

@MartinPrikryl https://i.stack.imgur.com/IBrp1.jpg ..這是我的輸出。 我使用\\ fs01 \ Reporting \ KGP \ File History來訪問我的服務器...我編輯了我的問題。對於那個很抱歉。 – qwerty

+0

@MartinPrikryl我知道我必須連接到此服務器之前,我轉移任何文件..但我不知道如何做到這一點。 主機名是fs01,用於我要將文件傳輸到的服務器。 – qwerty

回答

1

UNC路徑不能在Windows中成爲工作目錄。

但是你可以在get命令把它作爲一個目標路徑:

get *.xls>1D "\\fs01\Reporting\KGP\File History\" 

一個批處理文件的完整命令是:

"C:\Program Files (x86)\WinSCP\WinSCP.com" /command^
    "open ftp://rnandipati:[email protected]/kgptel/"^
    "get *.xls>1D ""\\fs01\Reporting\KGP\File History\"""^
    "rm *.xls<1D"^
    "exit" 

(不,我明白了一個邏輯在get *.xls>1Drm *.xls<1D

對於類似的問題,請參見Get file from FTP server and copy it to UNC directory


如果您需要驗證文件服務器,請參閱:

+0

get用於獲取ftp服務器中具有今天日期的文件,rm用於除去當前日期以外的所有文件。 – qwerty

+0

@Rahul好的,如果這就是你想要的,代碼是正確的。除了其中一個邊界應該包括'='(即'>'+'<=' or '> ='+'<'),否則你可能會錯過某個文件。 –

+0

無論如何,我的回答有幫助嗎? –

相關問題