2011-03-21 70 views
0

我是Winscp的新手,我在執行批處理文件時遇到問題。在winscp中執行批處理文件的問題

的情況是這樣的:

我有一個批處理文件,兩個文件夾(最多B和向下文件夾C),在長達文件夾d,一個文本文件,E(從文件中不同的一些文本文件在D)和ppk文件F.所有這些東西只在一個文件夾中。

批處理文件A有一個包含文本的腳本(腳本如下所示)。如果該文本內容是真的(意思是如果該文本(文本內容與E相關,即如果文本文件E被執行)被執行),則只有在向上文件夾B中的文件向下移動到文件夾C。

而且在批處理文件的腳本是:

C:\somefolder\WinSCP3.exe /console /script=E.txt /log=session.log 
if errorlevel 1 goto error 
xcopy C:\somefolder\up\*.* C:\somefolder\down\ /y 
del C:\somefolder\up\*.* /Q 
:error 
echo Upload failed, keeping local files 

而且在文本文件E中的內容是:

option batch abort 
option confirm off 
open @test.com 
change remote directory 
cd \somedirectory 
option transfer binary 
put C:\somefolder\up\*.* 
close 
exit 

我不知道爲什麼,從上文件夾中的文件沒有移動到文件夾下。

請讓我知道哪兒的問題是,如何解決這一問題....

+1

批處理文件,似乎沒有什麼不尋常我除了開行:'C:\ somefolder = E.txt /日誌= C:\ somefolder \ session.log'。這是Winscp特定的東西嗎?因爲如果不是,這條線似乎有問題,而且很可能是錯誤的。它應該做什麼? (或者它做什麼*) – 2011-03-22 00:31:36

+0

感謝您給我一些評論......實際上C:\ somefolder = E.txt意味着進程將進入該文件並嘗試執行該文本文件E.並且/ log = C:\ somefolder \ session.log這個東西會創建一個會話日誌。 – Shahsra 2011-03-22 16:12:02

+0

我得到了一些改進...但仍然不復制文本文件D從up文件夾到down文件夾。我要編輯問題以提高水平... – Shahsra 2011-03-22 16:14:53

回答

2

感謝舍甫琴科M.他的評論清除我的困惑,並給出了正確的答案。

下面是正確的語法。

C:\somefolder\WinSCP3.exe /console /script=E.txt /log=session.log 

xcopy C:\somefolder\up\*.* C:\somefolder\down\ /y 
del C:\somefolder\up\*.* /Q 

if errorlevel 1 goto error 

:error 
echo Upload failed, keeping local files 

在文本文件中E.txt內容是:

option batch abort 
option confirm off 
open @test.com 
change remote directory 
cd \somedirectory 
option transfer binary 
put C:\somefolder\up\*.* 
close 
exit 
0

說不上來,如果有人還在讀此線程或不.. 但我知道什麼是「放」命令從本地上傳文件目錄到遠程目錄。 TS想要「將文件從遠程目錄下載到本地目錄」,所以我認爲正確的命令是「get」。

乾杯, 沉