Batch i wyświetlanie zawartości pliku


(Uglybean) #1

Witajcie.

Próbuje utworzyć batchera który otworzy plik txt i wyświetli tylko jego np. 5 i 6 wiersz .

Ktoś ma pomysł ?


(Ryan) #2

Przykładowy kod wyświetlające czwartą linię pliku aa.txt:

@echo off

setlocal enabledelayedexpansion


SET cnt = 0


FOR /F "tokens=*" %%i in (aa.txt) do (

	set /a cnt=!cnt!+1

	if !cnt!==4 echo %%i

)


endlocal

(Uglybean) #3

otóż to ! dzięki

to może jeszcze jedno ... jak zczytać cały plik do zmiennej i z niej wyświetlić wiersz ?


(Asz202) #4

Pętla FOR /F "tokens=*" %%i in (aa.txt) do () wczytuje całą zawartość linijka po linijce do zmiennej "i", a dzięki licznikowi wyświetlana jest dana linijka na ekranie.

Tu masz jeszcze wyświetlanie tekstu od linii do linii

@echo off

setlocal enabledelayedexpansion

set con=1

set /p b=linia poczatkowa:

set /p c=linia koncowa:

echo. &echo.

echo Wybrany tekst:

echo.

for /f "tokens=*" %%i in (aa.txt) do (

		for /l %%a in (!b!,1,!c!) do (

		if !con! equ %%~a echo %%~i

	)

	set /a con+=1

)

endlocal