none
Script copiar pastas pela rede zipar com a data do dia RRS feed

  • Pergunta

  • Estou com um probleminha para copiar pastas da rede

     

    cd\

    net use f: \\192.168.160.100\Compart /user:administrador 123

     

    f:



    copy f:\Data I:\Backup\Data.rar

     

    Mas preciso fazer esse arquivo ser salvo com a data do dia

    Obrigado!

    • Movido fmaquino quinta-feira, 28 de outubro de 2010 14:09 Postado em forum incorreto (De:Windows XP)
    quinta-feira, 28 de outubro de 2010 12:42

Respostas

  • Amiga,

    Primeiramente, para você criar uma pasta com a data (e que fique no formato dd-mm-aaaa),  seu código seria assim: md %date:~0,2%-%date:~3,2%-%date:~6,4%

    No caso de hoje, ele criaria a seguinte pasta: 04-11-2010

     

    Como não sei a sua preferência pelo formato de data (dd-mm-aaaa|ddmmaaa|aaaa-mm-dd|aaaammdd), vou colocar o comando para o formato dd-mm-aaaa:

    @ECHO OFF

    "%programfiles%\winrar\winrar.exe" a " I:\Backup\%date:~0,2%-%date:~3,2%-%date:~6,4%.rar" "f:\%date:~0,2%-%date:~3,2%-%date:~6,4%"

    Explicando...

    "%programfiles%\winrar\winrar.exe" a - Essa parte, ele chama o Winrar e dá a ele uma função...

    " I:\Backup\%date:~0,2%-%date:~3,2%-%date:~6,4%.rar" - Este é o nome do arquivo final, no caso de hoje, seria I:\Backup\04-11-2010.rar

    "f:\%date:~0,2%-%date:~3,2%-%date:~6,4%" - Esse é a pasta que vc quer zipar, no caso de hoje, seria F:\04-11-2010

     

    Requisitos para o funcionamento do Script:

    * Ter o Winrar Instalado;

    * Ter a(s) pasta(s) de origem já com a data, no formato dd-mm-aaaa

     

    Acho que não terá erro!

    Qualquer coisa, poste seu problema

    Um abraço!

    • Sugerido como Resposta Wendell Mendes quinta-feira, 4 de novembro de 2010 23:48
    • Marcado como Resposta Fábio JrModerator quinta-feira, 12 de janeiro de 2012 13:44
    quinta-feira, 4 de novembro de 2010 23:47

Todas as Respostas

  • Sara,

    Acho dificil manipular variaveis dentro de arquivos .bat, tentei adicionar esta alteracao no seu script e acho que ficou quase bom.

     

    date /T > %temp%\data.tmp
    :: Le o arquivo que contem a data no formato D/M/Y
    FOR /F "tokens=1,2,3 delims=/" %%A IN (%temp%\data.tmp) DO SET DT=%%A-%%B-%%C 
    
    
    cd\
    net use f: \\192.168.160.100\Compart /user:administrador 123
    f:
    copy f:\Data I:\Backup\%DT%.rar
    

    Nestes link tem algumas dicas uteis sobre utilizacao do FOR em .bat

    http://ss64.com/nt/for_f.html

    http://www.robvanderwoude.com/ntfortokens.php

     


    Fábio de Paula Junior
    quinta-feira, 28 de outubro de 2010 15:07
    Moderador
  • Amiga,

    Primeiramente, para você criar uma pasta com a data (e que fique no formato dd-mm-aaaa),  seu código seria assim: md %date:~0,2%-%date:~3,2%-%date:~6,4%

    No caso de hoje, ele criaria a seguinte pasta: 04-11-2010

     

    Como não sei a sua preferência pelo formato de data (dd-mm-aaaa|ddmmaaa|aaaa-mm-dd|aaaammdd), vou colocar o comando para o formato dd-mm-aaaa:

    @ECHO OFF

    "%programfiles%\winrar\winrar.exe" a " I:\Backup\%date:~0,2%-%date:~3,2%-%date:~6,4%.rar" "f:\%date:~0,2%-%date:~3,2%-%date:~6,4%"

    Explicando...

    "%programfiles%\winrar\winrar.exe" a - Essa parte, ele chama o Winrar e dá a ele uma função...

    " I:\Backup\%date:~0,2%-%date:~3,2%-%date:~6,4%.rar" - Este é o nome do arquivo final, no caso de hoje, seria I:\Backup\04-11-2010.rar

    "f:\%date:~0,2%-%date:~3,2%-%date:~6,4%" - Esse é a pasta que vc quer zipar, no caso de hoje, seria F:\04-11-2010

     

    Requisitos para o funcionamento do Script:

    * Ter o Winrar Instalado;

    * Ter a(s) pasta(s) de origem já com a data, no formato dd-mm-aaaa

     

    Acho que não terá erro!

    Qualquer coisa, poste seu problema

    Um abraço!

    • Sugerido como Resposta Wendell Mendes quinta-feira, 4 de novembro de 2010 23:48
    • Marcado como Resposta Fábio JrModerator quinta-feira, 12 de janeiro de 2012 13:44
    quinta-feira, 4 de novembro de 2010 23:47