como criar arquivos de texto vazios cujo nome corresponde aos de uma pasta existente usando um arquivo de lote [fechado]

1

Estou tentando gravar um arquivo em lotes do Windows que verificaria quais arquivos de texto estão presentes na pasta A e na pasta B; e se um arquivo estiver presente apenas na pasta A, desejo criar um arquivo de texto com o mesmo nome na pasta B, que contenha apenas alguns textos arbitrários, mas não toque nos outros arquivos existentes.

para esclarecer as coisas

  1. Pasta A:

    • file1.txt
    • arquivo2.txt
    • file3.txt
  2. Pasta B:

    • arquivo2.txt
    • file3.txt

O código deve verificar e ver que file1.txt está faltando na pasta B e criar um arquivo com o mesmo nome contendo o texto "Hello World", mas não alterar de forma alguma os outros arquivos.

Eu sei que isso provavelmente vai usar o if e existir para funções, mas eu não consigo entender isso ... até agora, isso é o que eu venho com

for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%a" (
echo Hello World
)>"%~dp0\folder2\%%a"

EDIT Apenas adicionando a solução proposta pelo McDonald's (não ao restaurante) ao meu quebra-cabeça. Isso só funciona.

for %%a in ("%~dp0\folder1\*.*") do if not exist "%~dp0\folder2\%%~NXa" (
echo Hello World
)>"%~dp0\folder2\%%~NXa"
    
por Flaver-D 27.06.2017 / 21:28

0 respostas