2013-02-18 2 views
0

ребята, если я хочу, как сделать Findstr много раз он просто не показывать значение 2 & 3 в строке, пожалуйста, поправьте меняFindstr команды и несколько строк поиска

>summary.txt (
    for %%F in (*chkpackage*) do findstr %1 "%%F" nul || echo %%F:N/A && findstr %2 "%%F" &findstr %3 "%%F" 
) 

Я хочу искать на шпагат 2 и 3 тоже, но почему после запуска этой строки 2 и 3 не отображаются

Я использовал какой-то синтаксис неправильно?

, как если бы в моем текстовом файле ресурс имеет "

aaa 111 
bbb 222 
ccc 333 
DDD 444 
eee 555 
aaa 666 

sting1 для ааа
sting2 для ссса
sting3 для еее

результата в Summary.txt будет как

filename.txt : aaa 111 : ccc 333 : eee 555 
filename.txt : aaa 666 : ccc 333 : eee 555 

Благодарим за любой ответ

+1

Благодарим за предоставление ожидаемого результата. Но каков соответствующий вход и какие поисковые термины вы используете, чтобы попытаться получить указанный результат? –

+0

входа как abc.abc для string1 & 2 & 3 я просто хочу, чтобы найти строку, содержащую эти 3 слова и просуммировать затем записать в текстовый файл для последующего использования в моем первенствуете (я использовал его с VBA) – eathapeking

+0

Какую логику вы пытаетесь реализовать с помощью множества вызовов FINDSTR? Это, например, 'string1 AND string2 AND string3' или' string1 OR string2 OR string3' или что-то еще? Кажется, что это похоже на ANDs, но я не уверен, тем более, что вы говорите, что он работает не так, как ожидалось. –

ответ

1

Возможно, это то, что вы хотите?

@echo off 
for %%F in (*chkpackage*) do (
    for /F "delims=" %%a in ('findstr %1 "%%F"') do (
     for /F "delims=" %%b in ('findstr %2 "%%F"') do (
     for /F "delims=" %%c in ('findstr %3 "%%F"') do (
      echo %%F : %%a : %%b : %%c 
     ) 
    ) 
    ) 
) 
+0

Exactlyyyyyyyy man: D – eathapeking

Смежные вопросы