2017-10-08 9 views
0

作成した配列のテキストをチェックしようとしていますが、 "if"を使用していないと "echo"を使うことができますが、 「間違った構文は、」バッチスクリプト - 間違っている場合構文

@echo off 
setlocal ENABLEDELAYEDEXPANSION 

set i=0 

for /f "delims= " %%a in ('command') do (

set /A i+=1 
set list[!i!]=%%~a 
) 

set Filesx=%i% 

rem Display array elements 
for /L %%i in (1,1,%Filesx%) do (
    if list[%%i] =="some ttext" 
     echo !list[%%i]! 
) 
+0

'echo!list [%% i]! 'コマンドの前後にかっこがあってはいけませんか? – melpomene

+0

は、とにかく、私はそれらを追加し、結果は同じです – user2420171

答えて

1

と同じ物理回線上でなければならない場合は、真の条件のためのアクション:スクリプトで

@Echo Off 
SetLocal EnableDelayedExpansion 

Set "i=0" 
For /F %%A In ('command') Do (Set/A i+=1 
    Set list[!i!]=%%~A) 

Rem Display array elements 
For /L %%A In (1,1,%i%) Do If /I "!list[%%A]!"=="some ttext" Echo !list[%%A]! 

Pause 

ます変更する必要があります。if list[%%i]If /I "!list[%%i]!"

@echo off 
setlocal ENABLEDELAYEDEXPANSION 

set i=0 

for /f "delims= " %%a in ('command') do (

    set /A i+=1 
    set list[!i!]=%%~a 
) 

set Filesx=%i% 

rem Display array elements 
for /L %%i in (1,1,%Filesx%) do (
    if /i "!list[%%i]!" =="some ttext" (
     echo !list[%%i]! 
    ) 
) 
0

if文は(==またはequ用)正確な一致を必要としますので、片側を引用するならば、あなたは他を引用する必要があります。また

、私はそれに応じてスクリプトを変更することを検討しますif

+0

それを試してみました、まだそれは – user2420171

+0

と私の付録と...? – Magoo

関連する問題