Имя пользователя:
Пароль:
 

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

Ветеран


Contributor


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

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


Цитата Iska:
И skip же ещё (если первые строки не пустые). »
Iska, more /? Скип никак не нужен. Неприятность - если выводимая строка пустая. А скип при пустых строках не спасает.
А вот вариант, переменная при искомой пустой строке будет правильная, фантазия привела к наиболее оптимальному варианту
Код: Выделить весь код
@Echo Off
cls
	Set "FileIn=Z:\Box_In\Fi Le.txt"
	Set /A N=5 

	For /F "usebackq tokens=1* delims=:" %%i In (`2^>nul FINDSTR /R /C:".*" /N "%FileIn%"`) Do If "%%i"=="%N%" Set "NStr=%%j"
	Echo "%NStr%"
pause
Exit /B 0
Или, вот еще одно циничное извращение
Код: Выделить весь код
@Echo Off
cls
	Set "FileIn=Z:\Box_In\Fi Le.txt"

	For /F "usebackq tokens=1* delims=:" %%i In (`2^>nul FINDSTR /R /C:".*" /N "%FileIn%"`) Do Call Set "NStr%%i=%%j"
	Echo "%NStr5%"
pause
Exit /B 0
Получай строку какую хочется

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 04-12-2019 в 22:54.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:58, 04-12-2019 | #7