2017年11月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
無料ブログはココログ

« SETLOCAL ~ ENDLOCAL内部の環境変数をエクスポートする。(その2) | トップページ | VBAで文字列の中身をダンプする。 »

2008年3月 7日 (金)

ERRORLEVELを返さないコマンドのエラー判定

DELコマンドは、エラーになってもERRORLEVELを返しません。
その代わりに標準エラーにメッセージが出ます。
なので、その有無を判定すればよいでしょう。

DEL A 2>&1 | FIND /V ""

で、ERRORLEVELは、エラーがあれば、0、なければ、1になります。逆ですが:-p

CMD/CEXIT 0
FOR /F "delims=" %2 IN ('"DEL A 2>&1"') DO CMD/CEXIT 1 & ECHO %2

とすれば、ERRORLEVELは、エラーがなければ、0、あれば、1になります。面倒ですが:-(

« SETLOCAL ~ ENDLOCAL内部の環境変数をエクスポートする。(その2) | トップページ | VBAで文字列の中身をダンプする。 »