Ir ao conteúdo
  • Cadastre-se

Attilio Brandi

Membro Júnior
  • Posts

    18
  • Cadastrado em

  • Última visita

  1. @ricardo_br @ricardo_br Deu certo, Muito obrigado, só esta demorando devido ao volume de arquivos, mas deixei rolando aqui. não tem problema se apagar algum por engano, eu consigo reprocessar e gerar novamente, é que não compensava excluir todos os invoices e mandar tudo de novo, porque podia acontecer a mesma coisa de cair varias vezes o mesmo. Mas deixei rodando aqui, muito obrigado pela força.
  2. @ricardo_br Estou utilizando esse aqui, que move da pasta Bkp para a que preciso que faça a leitura, mas estou dando prioridade para os arquivos com o nome AP_Real pois sao mais urgentes. Segue o codigo @echo off setlocal enabledelayedexpansion set origem=caminhoOrigem\bkp\ set destino=caminhoDestino\ set contador=0 set limite=3000 for %%F in ("%origem%\ORACLECLOUD_AP_REAL_*.*") do ( set /a contador+=1 move "%%F" "%destino%" if !contador! equ !limite! ( set contador=0 goto :wait ) ) :wait timeout /t 5 /nobreak >nul endlocal
  3. @ricardo_br combinado, valeu obrigadao pela força, por enquanto criei um que processa 3 mil a cada 10 min, mas tem muito vai levar a semana inteira kkkk
  4. @ricardo_br Bom dia, testei aqui, mas infelizmente ainda não deu certo. Separei um grupo de 100 arquivos para testar, ficou + ou - 20 min rodando, mas não apagou nenhum registro. Veja na pasta Teste a maioria dos arquivos estava com o nome ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#799555DISTRIB#300000881058350PARCELA#1 Mudando apenas o horario no fim do arquivo.
  5. @ricardo_br Seguem alguns exemplos... preciso que fique apenas 1 arquivo de cada um desses invoices, anexei 3 de cada, mas existem muitos mais. ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#794988DISTRIB#1629771PARCELA#1_2023_9_5_23_2_40_914_776.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#794988DISTRIB#1629771PARCELA#1_2023_9_5_23_41_46_274_689.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#794988DISTRIB#1629771PARCELA#1_2023_9_6_0_1_31_973_474.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#798541DISTRIB#1307705PARCELA#1_2023_9_15_5_13_8_606_203.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#798541DISTRIB#1307705PARCELA#1_2023_9_15_5_3_2_3_100.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#798541DISTRIB#1307705PARCELA#1_2023_9_15_6_23_47_108_508.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#798541DISTRIB#1307708PARCELA#1_2023_9_15_7_25_53_70_983.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#798541DISTRIB#1307708PARCELA#1_2023_9_15_7_46_52_567_658.inb ORACLECLOUD_AP_REAL_INVOICE_PAYMENT_ID#798541DISTRIB#1307708PARCELA#1_2023_9_15_7_5_23_129_565.inb
  6. @ricardo_br isso na verdade eu quero que mantenha 1 só de cada... Por exemplo, um arquivo chama ABC_18_05, o outro chama ABC_18_06. O conteudo dos dois é o mesmo o que mudou foi o horario setado no final, para mim não importa qual dos dois irá permanecer, mas preciso que fique apenas 1 de cada. 1 arquivo ABC 1 não importa o horario do fim.... 1 arquivo DEF e por ai vai...
  7. Boa tarde pessoal, Preciso de uma ajuda para desenvolver uma bat que apague os arquivos com nome "parecido" em uma pasta. Os nomes sao iguais, mas no final seta a data/horario por isso ficam com essa diferença. por exemplo na pasta possuo os arquivos: Existem varios invoices esses sao apenas exemplos. ORACLECLOUD_AP_PREVISTO_INVOICE_ID#762514DISTRIB#1238556PARCELA#1_2023_9_7_3_22_45_558_98 ORACLECLOUD_AP_PREVISTO_INVOICE_ID#762514DISTRIB#1238556PARCELA#1_2023_9_7_3_32_56_33_161.inb ORACLECLOUD_AP_PREVISTO_INVOICE_ID#781103DISTRIB#300000769989625PARCELA#1_2023_9_6_21_41_58_222_852.inb ORACLECLOUD_AP_PREVISTO_INVOICE_ID#781103DISTRIB#300000769989625PARCELA#1_2023_9_6_21_52_14_601_949.inb Eu tentei fazer desta maneira, mas desse jeito apagam todos e não mantem um de cada desses registros. @echo off setlocal enabledelayedexpansion set "last=" for /f "tokens=*" %%a in ('dir /b /a-d *') do ( set "name=%%~na" if "!name:%last%=!" equ "!name!" ( set "last=!name!" ) else ( echo Excluindo %%a del /q "%%a" ) )
  8. @Entusiasta da Elétrica kkkkkkk o resultado final é o que interessa kkkkkk valeu mano....
  9. @Entusiasta da Elétrica Funcionou \o/.....Muito obrigado pelo apoio, ajudou muito. Abraço
  10. @Entusiasta da Elétrica está ótimo...muito obrigado pela ajuda
  11. @Entusiasta da Elétrica ainda não rolou totalmente, está copiando, mas não esta respeitando a quantidade, chegou em 2 mil registros então parei a execuçao. Será que falta algum outro ajuste no limitador?
  12. Boa tarde pessoal, preciso criar uma bat para mover alguns arquivos de uma pasta para a outra, mas gostaria de limitar de 500 em 500 para que o robo que le os arquivos não trave. Mas não estou conseguindo montar. Poderiam me ajudar?
  13. @ricardo_br acredito que não, essa parte é só para quando rodar a bat não ficar uma tela preta parada, ele fica mostrando a mensagem, estou achando que preciso colocar algo como o endereço de envio do email, algo assim...mas ainda não consegui...
  14. Boa tarde a todos, tudo bem? Gostaria de criar uma bat, para usar de monitoramento do processo, assim quando ele parasse de rodar eu recebece um alerta(email) informando. então pensei o seguinte, criar uma bat para verificar na pasta se existem arquivos anteriores aos de hoje e se sim enviar um email. Assim eu saberia que o processo de leitura dos arquivos parou. porém não está funcionando, ele até escreve enviando email....mas não chega em minha caixa, fiz dessa maneira, a pasta e o email estão apenas como teste: @echo off setlocal EnableDelayedExpansion set "folder=C:\Users\attilio.neto\Desktop\Arquivos_teste\" set "[email protected]" for /f "delims=" %%a in ('dir /b /a-d /o-d "%folder%\*"') do ( set "file=%folder%\%%a" set "date=" for /f "skip=1 tokens=1-3" %%b in ('robocopy /l /nocopy /is "%file%" "%file%" * ^| findstr /r /c:"^ *[^ ]"') do ( set "date=%%c-%%b-%%a" goto :break ) :break if defined date ( setlocal DisableDelayedExpansion set "date=!date:-=!" if !date! lss %date:~6,4%%date:~3,2%%date:~0,2% ( echo Email enviado para %email% com o arquivo !file!. rem call sendemail.bat !email! "Arquivo antigo encontrado" "!file!" ) endlocal ) )
  15. Ainda não funcionou, tentei assim, mas não copia...do jeito que fiz anteriormente copiava apenas os da primeira pasta. set "caminho=C:\Users\attilio.neto\Desktop\Teste_move\Pasta1" set "destino=C:\Users\attilio.neto\Desktop\Teste_move1\Pasta1" set "caminho=C:\Users\attilio.neto\Desktop\teste_move\pasta2" set "destino=C:\Users\attilio.neto\Desktop\Teste_move1\pasta2" forfiles /P "%caminho%" /M * /D -1 /C "cmd /c if not @isdir @filedate ^>"%date:~10,4%-%date:~4,2%-%date:~7,2%"^" move /Y @path "%destino%"" Consegui fazer mover o conteudo de maneira mais simples, porém não está respeitando as datas, não quero que mova os de hoje...fiz assim, ele moveu todos incluindo os de hoje: @echo off move C:\Users\attilio.neto\Desktop\teste_move\pasta1\*.* C:\Users\attilio.neto\Desktop\teste_move1\pasta1 move C:\Users\attilio.neto\Desktop\teste_move\Pasta2\*.* C:\Users\attilio.neto\Desktop\Teste_move1\pasta2 /M * /D -1 /C "cmd /c if not @isdir @filedate ^>"%date:~10,4%-%date:~4,2%-%date:~7,2%"^" Boa tarde pessoal, consegui....mas precisei repetir as linhas...segue como montei: @echo off set Fonte=C:\Users\attilio.neto\Desktop\teste_move\pasta1 set Destino=C:\Users\attilio.neto\Desktop\Teste_move1\pasta1 robocopy "%Fonte%" "%Destino%" /move /minage:1 set Fonte=C:\Users\attilio.neto\Desktop\teste_move\pasta2 set Destino=C:\Users\attilio.neto\Desktop\Teste_move1\pasta2 robocopy "%Fonte%" "%Destino%" /move /minage:1 exit

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!