for /f "tokens=1-2" %%A in (x.txt) do echo %%B > DirectoryA\%%A\id.txt
Discussão:
Você pode obter muitas informações úteis digitando FOR /?
em um Prompt de Comando. Em particular,
FOR /F ["
options"] %
variableIN (
file-set) DO
command[
command-parameters]
lê o arquivo ou arquivos especificados entre parênteses (o file-set
) e analisa cada linha em tokens. tokens=1-2
é a string options
para dizer que você deseja a primeira e a segunda palavras em cada linha. %%A
especifica que %%A
é a variável na qual a primeira palavra será lida; implicitamente / automaticamente, a segunda palavra entra em %%B
. Em seguida, o comando echo
será executado com %%A
e %%B
definido para as duas palavras do arquivo.
Observação: Se você estivesse digitando esse comando diretamente no Prompt de Comando, usaria %A
e %B
, mas teria que usar sinais de porcentagem dupla ao fazer a mesma coisa um script (arquivo em lotes).