Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата slfly:
Судя по всему в do дополнительное условие ставить не стоило. »
slfly, Вам поможет отложенное раскрытие переменных:
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

for /f %%a in (numbers.txt) do (
	set line=%%a
	find /i "!line!" pasports.txt
	
	if errorlevel 1 goto :EOF 
	if errorlevel 0 echo !line! >> results.txt
)

endlocal
exit /b 0
Это если не трогать логику, а касаться некорректной работы с раскрытием переменных %…% внутри операторных скобок:
Цитата slfly:
Значение в переменную line записывается, но вот в команде find эта переменная уже не раскрывается - происходит поиск пустого параметра, в итоге батник заканчивается после прогона первого же значения. »

Отправлено: 16:53, 14-02-2012 | #3