Arquivo em lote PARA comando pulando linhas

Arquivo em lote PARA comando pulando linhas

Preciso de ajuda com o comando FOR no arquivamento em lote. O que eu quero fazer é ler o arquivo "Test.txt" e ler apenas a terceira linha e transformá-la em uma variável utilizável dentro deste arquivo em lote. Aqui está o que eu tentei, mas não funcionou.

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

Quando executo o programa aparece "O sistema não consegue encontrar o arquivo Test.txt. Toda ajuda é muito apreciada.

Responder1

  1. O erro indica que seu arquivo Test.txtnão está no mesmo diretório a partir do qual você está executando o script.
  2. Para conseguir capturar melhor apenas a terceira linha de um arquivo de texto, tente o seguinte, que será executado rapidamente emQUALQUERsize, em vez de ter que percorrer um arquivo inteiro como o seu faria (e o seu faria incorretamente ... você está realmente pegandocada terceira linha).

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

    eco %LinhaTrês%

Conforme mencionado em outro comentário, você pode tentar o caminho completo para o arquivo em vez de apenas o nome do arquivo.

Responder2

O principal problema com o seu código são as aspas faltantes deem (...)

Deveria ser:

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

Se ainda não funcionar, tente escrever o caminho completo paraTest.txt(como outros sugeriram)

informação relacionada