2017-10-24 5 views
0
set file=D:\TakeFileName.txt 
set staging=D:\Download 
echo "File location "'%file% 
SETLOCAL EnableDelayedExpansion 

for /F "tokens=1-2 delims=;;" %%A in (%file%) do (//for loop 
rem echo %%A %%B 
echo f | xcopy %%A %staging%\%%B /C /Q /R /Y 
echo !errorlevel! 
IF !errorlevel! EQU 0 (echo "0-Successfully file is copied fileName 
:%%A">0.txt)//logging 0 exitcode error in 0.txt 
IF !errorlevel! EQU 1 (echo "1-No files were found to copied" >1.txt) 
IF !errorlevel! EQU 2 (echo "2-User abort operation" >2.txt) 
IF !errorlevel! EQU 4 (echo "4-Initialization error " >4.txt) 
IF !errorlevel! EQU 5 (echo "5- Disk write error occurred." >5.txt) 
) 
PAUSE 

このプログラムは、テキストファイルに1つのエラーだけを記録しますが、0.txtで0の終了コードエラーが発生するたびにログを記録します。バッチスクリプトで特定のテキストファイルに特定の終了コードエラーを記録する方法はありますか?

+0

存在しません作成します;'。行内の他の場所にある単一の** ';' **文字があれば、区切り文字として扱われます。 – Compo

+0

バッチに '//'コメントはありません! 'IF!errorlevel! 'という行に改行があります。 EQU 0 'とする必要があります。 '' '文字も' echo'コマンドでエコーされることに注意してください。 – aschipfl

答えて

1

>ファイルを新規作成します。

>>は、既存のファイルに追加するか、ファイルの新しいものがすでにただ、 `delimsは= ;;`効果的delimsの= `と同じであることをご承知作るために

関連する問題