6
私はエラーが発生する行番号でエラーを伝えることができる汎用バッチファイルを構築しようとしています。
しかし、コードの各行番号を書くのはちょっと面倒です。現在の行番号を取得する方法は?
バッチファイルの実行中に現在の行番号を取得することはできますか?
次のコードが動作するようにしますか?
@echo off
call :doSomething 1
if %errorlevel% GTR 0 (
REM Do something magic, to retrieve the lineNo
call :getCurrentLineNo currentLineNo
echo Error near %currentLineNo%
)
call :doSomething 2
if %errorlevel% GTR 0 (
call :getCurrentLineNo currentLineNo
echo Error near %currentLineNo%
)
+1、こんにちはジェブ、私おそらく '/ N/Cを使用するようにFINDSTRの検索を変更する必要があります:-)だけで、非常にクールなこのポストに気づいた:のいずれかの側に "%〜2"'(スペースID)には、IDにはスペースが含まれないという慣例があります。あなたは "abc123"に "zabc1234"をマッチさせたくありません。/Cオプションは、 "A.1"のようなものが正規表現として解釈されないようにします。また、FINDSTRのエスケープの問題を避けるためにIDにバックスラッシュを使用しないでください。そうでない場合は、コード内で\を\で置き換えて検索してください。 – dbenham