Uma solução simples é
for /f "tokens=3" %%a in (database.txt) do set word3=%%a
Após essa declaração, a variável %word3%
conterá a terceira palavra da linha no arquivo. Se o arquivo tiver mais de uma linha, você obterá a terceira palavra da última linha que tenha pelo menos três palavras; O comando set word3=%%a
(após a palavra-chave do
) será executado com %%a
definido para a terceira palavra de cada linha.
Se você decidir que deseja fazer mais de um comando por linha, use a seguinte sintaxe:
for /f "tokens=3" %%a in (database.txt) do (
…
commands referencing
%%a
…
)
Editar: Como dito acima, o código (comandos) no bloco após o do
é executado para cada linha qualificada. Se você quiser "capturar" apenas a primeira linha, basta fazer isso adicionando lógica de filtragem, como em:
setlocal enabledelayedexpansion
set first=1
for /f "tokens=3" %%a in (database.txt) do (
if !first! == 1 (
set first=0
…
commands referencing
%%a
…
)
)
Você pode substituir o a
(em %%a
) por qualquer letra, mas deve ser apenas uma única letra; não é uma variável normal.