2012-11-15 64 views
0

我正在嘗試在使用psftp.exe的SSIS腳本任務中創建批處理文件。該批處理文件將連接到遠程SFTP服務器(運行Windows XP)並遞歸下載文件。一旦下載完成,文件(但不是他們的目錄)應該被刪除。從Windows SFTP服務器遞歸刪除文件

批處理文件調用psftp.exe -b script。在腳本文件,我可以遞歸打倒文件,用這個命令:

mget -r Share 

(分享是起始文件夾,該文件夾結構類似):

.../Share/Client1 
.../Share/Client2 

不過,我想不出如何刪除我放下的文件。如果我可以得到一個遞歸移動,它可以工作,但它還沒有工作。與'mget'執行後的遞歸刪除一樣。

有沒有人有答案?

+0

問題是什麼? –

+0

在該修補劑(即psftp.exe)運行時,此命令遞歸下降帶來從遠程Windows服務器上的文件的腳本文件: MGET -r分享 (其中共享是遠程服務器上的目錄。) 然而,使用什麼命令可以在文件被刪除後刪除這些文件? (或者,什麼命令允許我遞歸移動它們?) 謝謝, – cafescott

+1

SFTP沒有「將遠程文件移動到本地」的概念,也沒有「遞歸刪除遠程文件」的概念。我想你將需要編寫一些邏輯來首先查找文件名,存儲列表,遍歷列表以複製然後刪除文件。它可以在.bat中實現,但在Powershell或Python中可能更容易, –

回答

0

的WinSCP可以與get命令一個-delete開關做到這一點:www.winscp.net/eng/docs/faq_script_transfer_and_delete

的WinSCP使用執行進程任務SSIS的效果很好。通常不需要腳本,因爲您可以使用/命令將命令串起來

+0

謝謝邁克,我會研究它。 – cafescott