如何在ECHO输出重定向到错误路径时检测错误?

时间:2013-03-09 18:15:52

标签: batch-file

第一次在这里发帖。我正在编写一个DOS批处理脚本来自动化归档Oracle表的过程。归档工具需要一个参数文件,其中包含需要在运行时填充的标记。我使用以下逻辑,尝试2种不同的方法来捕获错误,但是当重定向到错误的路径时,错误没有被捕获。是否有ECHO的替代方法,或另一种检测此写入错误的方法?还是其他任何想法?非常感谢!
-Greg

@ECHO OFF
FOR /F %%G IN (O:\tmp\infile.txt) DO (
    ...
    ...
   ECHO TABLE=%%G    > P:\BADPATH\MYOUTFILE1.TXT
   IF %ERRORLEVEL% NEQ 0 GOTO END
    ...
   ECHO TABLE=%%G    > P:\BADPATH\MYOUTFILE2.TXT
   IF ERRORLEVEL 1 GOTO END
    ...
    ...
 )

:END
IF %ERRORLEVEL% NEQ 0 ECHO FAILED! 
ECHO EXITING

1 个答案:

答案 0 :(得分:0)

不确定我是否理解正确,但听起来您想先检查文件/文件夹是否存在。如果是这样的话:

IF EXIST P:\BADPATH\ goto notexist else goto exist
:notexist
echo Doesn't exist.
:exist
echo It exists!

或使用standard()标记来包含代码。