Archivo por lotes PARA comandos que saltan líneas

Archivo por lotes PARA comandos que saltan líneas

Necesito ayuda con el comando FOR en el archivo por lotes. Lo que quiero hacer es leer el archivo "Test.txt" y leer solo la tercera línea y convertirla en una variable utilizable dentro de este archivo por lotes. Esto es lo que intenté pero no funcionó.

for /f "skip=2 delims=" %%a in (Test.txt) do (
  set %%a=%LineThree%
)

Cuando ejecuto el programa, dice "El sistema no puede encontrar el archivo Test.txt. Se agradece mucho toda ayuda.

Respuesta1

  1. El error indica que su archivo Test.txtno está en el mismo directorio desde el que ejecuta el script.
  2. Para lograr mejor capturar solo la tercera línea de un archivo de texto, intente lo siguiente, que se ejecutará rápidamente enCUALQUIERtamaño de archivo, en lugar de tener que ejecutar un archivo completo como lo haría el suyo (y el suyo lo haría incorrectamente... en realidad está tomandocada tercera línea).

    (para /l %%a en (1,1,3) configure /p LineThree=) <Test.txt

    eco% LíneaTres%

Como se mencionó en otro comentario, es posible que desee probar la ruta completa al archivo en lugar de solo el nombre del archivo.

Respuesta2

El principal problema con su código son las citas que faltan deen (...)

Debería ser:

for /f "skip=2 delims=" %%a in ('Test.txt') do (
  set %%a=%LineThree%
)

Si aún no funciona, intente escribir la ruta completa paraTest.txt(como otros sugirieron)

información relacionada