Ola senhores(as) !
Tenho em uma estacão na minha rede, arquivos de texto que são gerados por um aplicativo em um diretório compartilhado oculto: (\\nomedopc\pdv$\mfd\ ).
Estes *.txt têm a seguinte 1ª linha:
"010000 2013050615403200109653290000147MFD000331000361201405012014053107.03.05AC1704 01.00.00"
Nesta linha contém sempre uma sequência de texto que refere-se a faixa de datas de forma invertida que no exemplo é essa "2014050120140531".
Já consegui fazer com que um arquivo que criei em BAT, utilizando o FINDSTR /M, localize arquivos *.txt e imprima pra mim na tela os os nomes dos arquivos
que contém esta ocorrência (2014050120140531).
Mas eu queria que estes arquivos quando localizados pelo FINDSTR /M, fossem copiados para meu computador (servidor) pela rede.
O BAT que eu fiz foi o seguinte:
echo off
echo Copiando... Aguarde.
setlocal enabledelayedexpansion
SET ORIGEM=\\nomedopc\pdv$\mfd\*.txt
SET DESTINO=C:\backup
FOR /F "delims=" %%a in ('dir /b %ORIGEM%') do (
TYPE NUL
TYPE "%%~a" | findstr "2014050120140531" > nul 2>&1
IF !ERROLEVEL! equ 0 xcopy /y /z "%%~a" "%DESTINO%"
)
echo COPIA CONCLUIDA COM SUCESSO.
echo.
pause
... só que ele copia TODOS os arquivos *.txt que está no diretório não respeitando a string que defini.
Então, qual seria o comando correto para isso?
Antecipadamente agradecido as opiniões ! ;-)