2016-06-30 5 views
2

私は自分のサーバー上の特定のディレクトリにあるすべてのファイルをftpするバッチファイルを持っていますが、FTPで完了するとファイルの作成日が変わります。私はこれを保持することができますか、またはファイル名と一緒にそれを連結することができる方法はありますか?これ以上の処理にはこの情報が必要です。内蔵のFTPクライアント(ftp.exeCMD経由のFTPファイルと日付の作成

@echo off 
echo open *ip* >> temp.txt 
echo *user* >> temp.txt 
echo *pass* >> temp.txt 
echo cd *directory* >> temp.txt 
echo lcd *localdirectory* >> temp.txt 
echo prompt no >> temp.txt 
echo mget *.q* >> temp.txt 
echo quit >> temp.txt 
ftp -s:temp.txt 
del temp.txt 
exit 

答えて

1

のWindows(およびその逆)をダウンロードする際に、リモートファイルのタイムスタンプを保存することができません。

は、ここに私のバッチファイルのコードです。

別のFTPクライアントを使用する必要があります。他のほとんどのFTPクライアントはタイムスタンプを保持しています。例えば


WinSCP scriptingと、次のバッチファイル(download.bat)を使用します。

winscp.com /ini=nul /log=download.log /command^
    "open ftp://user:[email protected]/"^
    "cd /directory"^
    "lcd c:\localdirectory"^
    "get *.q*"^
    "exit" 

Converting Windows FTP script to WinSCP scriptを参照してください。

WinSCP generate the script file or even the batch file for youも指定できます。

+0

はクール、よさそうだが、問題は、私は、Webアプリケーションのためにそれを使用していますが、私は上のWinSCPを持っている私のクライアントを求めて周りに行くことができないということです(私はWinSCPのの著者です)彼のサーバー。私はこれを行うことができる他の方法はありますか? –

+0

なぜあなたはウェブアプリケーションで 'ftp.exe'を使うのですか?あなたのウェブアプリケーションはどの言語ですか? –

+0

Javaで書かれています。私は直接ftp.exeを使用しませんが、私のWindowsサーバー上のバッチファイルを介してそれを起動する –

関連する問題