BandaAncha

  • 🔍 en 📰 artículos ⏎
  • 🔍 en 💬 foros ⏎
  • 🔍 en 👇 este 💬 foro ⏎
  • 🔍 en 👇 este 💬 tema ⏎
Regístrate Regístrate Identifícate Identifícate

Mostrar contenido de la línea de un archivo .txt en Windows

oskarrr

Necesito mostrar la línea número 3 (por ej.) de un archivo de texto.

No he encontrado la forma de hacerlo ni con type, ni con more, ni con nada.

En Linux recuerdo que era bastante sencillo. ¿Es posible en MS-DOS?

JoeDalton

FIND?

🗨️ 1
oskarrr

Creo que no vale. Me vale para contar las lineas totales del archivo, pero no para mostrarlo linea a linea, o mejor dicho, una determinada linea.

Aun así, gracias

Frankie2004

Lo mejor es que consigas versiones Win32 de las textutils de Unix, así tendrás head, tail, cut y muchas otras.
Una posibilidad es poner FIND /N /V "" fichero | FIND "[3]" ... pero te sale delante el número de línea.

🗨️ 1
oskarrr

No va a ser necesario bajarme los comandos de linux para win32. Lo que me has pueso de find me viene de perlas, ya que todas lineas tienen el mismo número de caracteres, y puedo sesgar los resultados metiendo linea a linea en una variable y haciendo %variable:~-8%.

Ahora bien, no hay forma de meterle a una variable el resultado de un comando, por ejemplo:

set variable=type archivo.txt

oskarrr
0

Por si a alguien le hace falta, sería algo así:

set var=numlinea
set var=i
set numlinea=0

for /f "tokens=*" %%i in (archivo.txt) do call :proceso1 "%%i"
goto fin

:proceso1
set /a numlinea=%numlinea%+1 //contador de linea
set a=%1 // asignación de parámetro a variable
echo La linea %numlinea% contiene: %i%. //muestra en pantalla la variable %i para las diferentes lineas

:fin
🗨️ 3
JoeDalton

Te vas a hacer el p.amo de los scripts en dos.

Por cierto, edita el mensaje para quitar los emoticonos, por los :P

🗨️ 1
oskarrr

Me está costando esto el dos. Hace tiempo experimenté con c++ y era muchísimo más intuitivo que dos. Aunque me ha costado, ya tengo acabado el programita. No obstante, hay un par de cosas que mejorar, esto nunca a acaba...

Saludos.

ZOTON

Muy bueno: lo dejo fijo en el hilo de preguntas del foro resueltas por si es de utilidad general.
Pero, como dice Joe, edita el post para quitar lo emoticons.