Ir ao conteúdo

Marcos Pereira Simões

Membro Pleno
  • Posts

    61
  • Cadastrado em

  • Última visita

Tudo que Marcos Pereira Simões postou

  1. @ricardo_br, sem palavras pra agradecer. God d+ Monstro
  2. @ricardo_br então no arquivo está com DDMMAA e preciso AAAAMMDD. Meu amigo, me pedem coisas impossíveis aqui e não manjo muito. Mas estou dando o crédito a você. Anexo estou enviando um trecho de um arquivo CNAB (arquivo de cobrança de banco). Na primeira linha, na posição 95 a 100 é a data do arquivo, no caso 071022 (07/10/2022). Ai que vem o que me pediram. É possível uma bat ler essa posição (95-100) e gerar um novo arquivo de data (igual ao que você me ajudou anteriormente) com a data formatada? Ou seja, a bat ia ler 071022 e devolver no txt. Data2.txt (nesse arquivo viria essas linhas) 20220710 20220710 Se for muito complicado, relaxa.
  3. @ricardo_brcara agradeço muito. Não consigo testar na data de hoje né? @ricardo_br Meu amigo, me pedem coisas impossíveis aqui e não manjo muito. Mas estou dando o crédito a você. Anexo estou enviando um trecho de um arquivo CNAB (arquivo de cobrança de banco). Na primeira linha, na posição 95 a 100 é a data do arquivo, no caso 071022 (07/10/2022). Ai que vem o que me pediram. É possível uma bat ler essa posição (95-100) e gerar um novo arquivo de data (igual ao que você me ajudou anteriormente) com a data formatada? Ou seja, a bat ia ler 071022 e devolver no txt. Data2.txt (nesse arquivo viria essas linhas) 20220710 20220710 Se for muito complicado, relaxa. CNAB_TESTE.txt
  4. @ricardo_brboa tarde! Meu camarada novamente, de novo e outra vez preciso de sua ajuda. você me passou o código anexo e funciona de boas. Porém me apareceu uma condição que eu queria ver se consegue me ajudar. Eu rodo essa bat hoje e me cria um arquivo que chamo de data.txt com a data do dia anterior. O problema é que quando gero na segunda (no caso hoje) dia 10/10/2022 a bat me gera o arquivo datas como 09/10/2022 nesse caso um domingo. Tem alguma condição que possa ser adicionada para não considerar sábado e domingo? No caso eu rodando hoje ele me traria a data de sexta-feira. Ou seja, quando for somente sábado e domingo a bat faria esse tratamento de datas. arquivo data.txt
  5. @ricardo_brCara, deu certo, mas tem um detalhe que acabei esquecendo de mencionar. posso ter tipo: CNAB.IDA CNAB1.IDA Ou seja , mais que um arquivo. Nesse caso, teria que ficar assim: CNAB_07102022.IDA CNAB1_07102022.IDA @ricardo_brmano, relaxa. Consegui aqui. Como só tem dois arquivos, repeti o comando e deu certo. Muito obrigado.
  6. @ricardo_br beleza? Cara, consegue me ajudar mais uma vez? Por ex: na pasta c:\teste tem o arquivo "CNAB.IDA" Precisaria mover esse arquivo para pasta c:\downlods\banco, porém renomeando com a data. Ex: CNAB_071022.IDA
  7. @ricardo_brvocê que desenvolveu essa bat pra mim. Dia 24.08 @ricardo_brseu código deu certo. Obrigado
  8. @ricardo_brtá na mão.. valeu Compactar_Leas.txt
  9. @ricardo_brme ajuda. Cara, não sei porque meu código tá dando ruim. Tô informando 3 dias de retroatividade e está gerando com data de 30/08...!!!?? ERP_LEAS_2022-08-30 TER.zip @echo off SetLocal EnableDelayedExpansion set Fonte=C:\Cassiopae\Rel\ set Destino=C:\Cassiopae\Rel\Arquivos_ERP\ set Seven=C:\Program Files\WinRAR\WinRAR.exe for /f "skip=1 tokens=3" %%a in ('reg query "HKCU\Control Panel\International" -v "sShortDate"') do set FormatoData=%%a FOR /L %%a in (0,1,6) do IF /I "!FormatoData:~%%a,2!"=="dd" set "PDias=%%a,2" FOR /L %%a in (0,1,6) do IF /I "!FormatoData:~%%a,2!"=="mm" set "PMeses=%%a,2" FOR /L %%a in (0,1,6) do IF /I "!FormatoData:~%%a,4!"=="yyyy" set "PAno=%%a,4" set DataAtual=!Date:~%PAno%!!Date:~%PMeses%!!Date:~%PDias%! set Ano=!Date:~%PAno%! set Mes=!Date:~%PMeses%! set Dia=!Date:~%PDias%! :: MesNu e DiaNu são data do Mês e Dia sem 0 na frente set /a MesNu=10000%Mes% %% 10000 set /a DiaNu=10000%Dia% %% 10000 set /a AnoNu=%Ano% :: DiaAn é igual dia anterior :: Para mudar a sequencia + - dias anteriores é só mudar no (1,1,7) for /L %%a in (1,1,3) do ( IF !DiaNu! GTR 1 ( set /a DiaNu=!DiaNu! - 1 set DiaAn=0!DiaNu! set DiaAn=!DiaAn:~-2! set MesAn=0!MesNu! set MesAn=!MesAn:~-2! ) else ( set Contador=31 call :MesAnterior set DiaAn=0!DiaNu! set DiaAn=!DiaAn:~-2! set MesAn=0!MesNu! set MesAn=!MesAn:~-2! ) ) pushd "%Fonte%" for /f "delims=" %%a in ('powershell ^(get-date !DiaAn!/!MesAn!/!AnoNu!^).DayOfWeek.value__') do set Semana=%%a if "%Semana%"=="0" goto :PulaZip if "%Semana%"=="1" set Semana=SEG if "%Semana%"=="2" set Semana=TER if "%Semana%"=="3" set Semana=QUA if "%Semana%"=="4" set Semana=QUI if "%Semana%"=="5" set Semana=SEX if "%Semana%"=="6" goto :PulaZip "%Seven%" a -y "%Destino%\%NFonte% ERP_LEAS_!AnoNu!-!MesAn!-!DiaAn! %Semana%.zip" *.SA* ACD*.* *.SC* RCD*.* *.LOG ALS*.* :PulaZip cd C:\Cassiopae\Rel\ Del /f /s /q *.SA* ACD*.* *.SC* RCD*.* *.LOG ALS*.* cls echo Operacao Terminada. echo. echo. exit Exit :MesAnterior IF !MesNu! EQU 1 (set MesNu=12& set /a AnoNu=!AnoNu! - 1) else (set /a MesNu-=1) xcopy . temp /l /i /d:!MesNu!-!Contador!-!AnoNu! > nul 2>&1 IF /i !Errorlevel! EQU 0 (set DiaNu=!Contador!) else (Set /a Contador=!Contador!-1 & goto :MesAnterior) goto :EOF
  10. @ricardo_bragradeço mais uma vez meu amigo. Abcs
  11. @ricardo_brentão, mas como vai comparar a data dos arquivos?
  12. @ricardo_brisso mesmo cara, pela data. Se a data do exe na pasta origem for maior que o na pasta destino, ai substitui, caso contrário não. Esse comando só vai copiar se a versão da rede for mais recente, e vai salvar as modificações em um log em "C:\Pasta Local\Atualizacoes.log" ai você vai ter sempre a versão mais recente. O nome dos arquivos é igual tanto no computador local como na rede correto? @ricardo_br Exatamente isso. É por fim, eu execute o exe.
  13. Complementando: Eu teria que gerar um log das alterações. Então, mas como iria fazer a comparação de versão (pela data)?
  14. @ricardo_br Veja se consegue me ajudar. Olha o esquema, vou colocar aqui um exemplo hipotético. Na rede eu tenha uma pasta "x" que contém os seguintes executáveis com data: Principal* - Exe_1.exe - 20/09/2022 Secundário - Exe_2.exe - 20/09/2022 Secundário - Exe_3.exe - 20/09/2022 Na minha máquina eu também teria esses mesmos caras, só que minha versão é anterior: Principal* - Exe_1.exe - 10/08/2022 Secundário - Exe_2.exe - 10/08/2022 Secundário - Exe_3.exe - 10/08/2022 * O principal nesse caso abre os secundários. É possível eu criar uma bat que faz verificação de versão (copia caso a versão seja menor que a da rede), faz a cópia para minha máquina e por último executa o Exe_1.exe?
  15. @ricardo_br Cara, obrigado mais uma vez. Me ajudou muito. abcs
  16. @ricardo_br Então mano, quando eu rodo essa bat, o arquivo Data.txt está sendo salvo no desktop. Quero indicar um caminho específico. Onde eu coloco isso na bat? valeu mano!
  17. @ricardo_br, bom dia amigo! Cara substitui o que me mandou por isso: echo !DiaAn!!MesAn!!AnoNu!>Data.txt echo !DiaAN!!MesAn!!AnoNu!>>Data.txt Deu certo!! Mano, desculpa, tentei configurar um local destino, mas não funcionou... Consegue me ajudar pela milésima vez?
  18. @ricardo_brmonstro sagrado. Obrigado mano!!! @ricardo_brsó pra eu ficar familiarizado com o código. Qual campo eu mudo aqui pra por exemplo gerar 20092022? @ricardo_breu achei aqui. Mas não entendi. set /a DiaNu=!DiaNu! (sem nada gera 21092022) ok Mas assim. set /a DiaNu=!DiaNu! -1 (com -1 gera 19092022 e não 20092022).
  19. @ricardo_bropa, isso mesmo. Mas queria citar dois pontos. caso a data seja sem as barras, como faço: De: 21/09/2022 Para: 21092022. E não querendo abusar já abusando (kk). Cara como eu conseguiria gerar esse cara hoje (21/09/2022) como a data de 19/09/2022, por exemplo? Creio que terá que ser assim. Cara, agradeço pela parceria. Tmj!
  20. @ricardo_brEntão mano, diariamente preciso criar esse arquivo txt com a data do dia. Então por exemplo hj eu gero o arquivo com data de 21/09/2022 (sempre com duas linhas). Amanhã gero com data de 22/09/2022. Diariamente tenho que criar manualmente esse arquivo (menos sábado e domingo. Estou te mandando um exemplo de como quero. Tipo um comando pra gerar dia a dia isso. Desculpa se não estou conseguindo ser claro. @ricardo_bresqueci o arquivo Data.txt
  21. @ricardo_br seria basicamente assim: o comando tem que gerar um txt, nesse haverá dois registros, por exemplo (a data é a mesma em ambas as linhas): Linha 1: 21/09/2022 Linha 2: 21/09/2022 Como ficaria no seu código? @echo off echo. set /p "Data=Favor informe uma data: " echo %Data%>>Data.txt echo %Data%>>Data.txt exit
  22. Cara, mais uma vez recorro a você. É possível criar uma bat que gere pra mim um arquivo txt ou outra extensão com as seguintes informações: Ex: Arquivo: Datas.txt Conteúdo do arquivo: 21092022 21092022 Ou seja, um txt com duas linhas e nessas linhas seria a data (as datas sempre serão iguais) que eu informar na bat.
  23. @ricardo_br opa, valeu mais uma vez mano.

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...