dポイントプレゼントキャンペーン実施中!

DOSのbatファイル上から、ftpのスクリプトを
起動していますが、ftpが失敗した際に戻り値を
batファイルに返したいのですが、方法がわからず
困っております。どなたか教えてください。
宜しくお願いします。

test1.bat
ftp -s:C:\VB\ftp_test.scr
copy 命令


ftp_test.scr
open xxx.xxx.xxx.xxx
login
pass
put 命令
quit

A 回答 (1件)

FTPが終了コードを返すかどうかは確認していませんが、


普通コマンドが終了コードを返す時には、
そのコマンドを実行したすぐ後では
%errorlevel%
で、そのコマンドの終了コードを得ることができます。
概ね、終了コードは、慣習的に0の時正常終了でそれ以外の時は、異常終了です。
とりあえず
echo %errorlevel%

ftp -s:C:\VB\ftp_test.scr
の後に置いてみて、失敗したときの終了コードを調べてみると良いと思います。
(FTPのコマンドでどうのというのは多分必要ないと思います)

この回答への補足

自己レスです。
以下のように書きましたら上手くいきました。
有難うございました。
test1.bat
ftp -s:C:\VB\ftp_test.scr >resulf.log
type resulf.log | find /i "230"
IF NOT %ERRORLEVEL% == 0 GOTO ERROR
copy 命令

補足日時:2005/05/22 10:30
    • good
    • 0
この回答へのお礼

レス有難うございます。
BLUEPIXYさんの言われますように
下で%ERRORLEVEL%の確認を行いましたところ
値は、0のままでした。接続がタイムアウトでも
putするファイルが無くてもエラーが返ってきません。
シビアな処理を行いたいので是非ともやりたいのです。

お礼日時:2005/05/22 08:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!