2017-11-03 6 views
0

バッチスクリプトを期待通りに機能させることができません。%% a in()の問題

以下を参照してください:

for %a in (5) do if not exist "%USERPROFILE%\%username%11.txt" (
    IPConfig|FindStr/IRC:"IPv4.*: 10\.0\.%a\.*">Nul 2>&1 && call %LOGONSERVER%\netlogon\printmapsyd.bat 
) else (

    echo Checking Printers...) 

スクリプトは、数5をチェックすることになっているが、それは50、500、5000、などどのようにのみをチェックするように制限すると動作しますか?

ありがとうございます。

+1

あなたは '' IPv4。*:10 \ .0 \。%a \ .. * "'で試しましたか? – yacc

+0

はい、私もそれを試しました。 –

+0

'*'正規表現はどのようにして '5'のようになりますか? – yacc

答えて

1

OPによると、この作品:

for %a in (5) do if not exist "%USERPROFILE%\%username%11.txt" (
    IPConfig|FindStr/IRC:"IPv4.*: 10\.0\.%a\..*">Nul 2>&1 && call %LOGONSERVER%\netlogon\printmapsyd.bat 
) else (
    echo Checking Printers... 
) 

だから正規表現に欠けている.がありました。 5の正しい正規表現はIPv4.*: 10\.0\.5\..*となります。