2017-05-09 22 views
1

WindowsバッチスクリプトでWindowsサーバからサードパーティサーバにファイルをアップロードしようとしています(これはOSなどはわかりません)。 PSFTPを使用してファイルをアップロードしています。それは長い間働いていましたが、昨日からファイルをアップロードしているときから、「ネットワークエラー:接続がタイムアウトしました」と表示され、バッチスクリプトファイルの制御がファイルのアップロード後にさらにステップを実行しています。バッチファイルでpsftpファイルのアップロードエラーを確認してください

私の要件は、バッチスクリプトを使用してpsftpコマンドでファイルをアップロードできない場合は、システムをさらに進めるべきではありません。さらなるステップの実行を停止する必要があります。

Windowsバッチスクリプトでこれを行う方法を教えてください。

答えて

1

psftpエラーの場合は終了コード1を返します。したがって、終了コードを確認してそれに応じて行動してください。

エラーを記録するには、ちょうどredirect all psftp.exe output to a fileを記録します。

psftp.exe -b script.txt > script.log 2>&1 

if errorlevel 1 (
    echo Error 
) else (
    echo Success 
    rem Other commands to perform on success 
) 
+0

ありがとうございました!エラーメッセージをキャプチャすることは可能ですか?例:ネットワークのタイムアウトやファイルが破損しているなど。コマンドが失敗した理由を知り、解決策を見つけよう。 – user661981

+0

あなたは大歓迎です。スタックオーバーフローでは、私たちは(答えを受け入れること、および/またはupvotingすることに感謝します)(http://stackoverflow.com/help/someone-answers)。 –

+0

キャプチャされたエラーメッセージで何をしたいですか? –

関連する問題