Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Problemi con file batch (.bat)

    Ciao.

    Utilizzo questo file batch per copiare dei file da uno spazio ftp ad un server centrale:

    codice:
    C:\Programmi\GnuWin32\bin\wget -P U:\Inetpub\wwwroot\appoggio\ -r ftp://10.xx.xxx.xxx/uscite/L/EV/EV_2009_10_06.zip
    Ho però due problemi che spero mi aiutate a risolvere, perchè non ci riesco:

    1) Il file che devo copiare che si chiama EV_2009_10_06.zip ogni giorno cambia nome, per cui quello che copierò domani sarà EV_2009_10_07.zip; posso prevedere un cambio data in automatico direttamente nel file batch? Il criterio è che il nome file nella parte finale prima dell'estensione zip è AAAA_MM_GG -1 rispetto al giorno corrente. Cioè oggi 7/10 copio il file del 6/10 (EV_2009_10_06.zip ), domani 8/10 copio il file del 7/10 8EV_2009_10_07.zip ) e via dicendo.

    2) Perchè quando eseguo la copia del file zip all'interno della directory U:\Inetpub\wwwroot\appoggio\ mi ritrovo il file dentro a :

    U:\Inetpub\wwwroot\appoggio\10.xx.xxx.xxx\uscite\L \EV\EV_2009_10_06.zip

    invece che in:

    U:\Inetpub\wwwroot\appoggio\EV_2009_10_06.zip ???

    Che sbaglio? Potreste aiutarmi?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Re: Problemi con file batch (.bat)

    Problema 2 risolto:

    codice:
    C:\Programmi\GnuWin32\bin\wget -P U:\Inetpub\wwwroot\appoggio\ -r -nd ftp://10.xx.xxx.xxx/uscite/L/EV/EV_2009_10_06.zip
    Rimane il problema 1...


  3. #3
    set giorno=%DATE:~7,2%
    set mese=%DATE:~4,2%
    set anno=%DATE:~-4%
    set data=%anno%%mese%%giorno%

    EV_%data%.zip

    ciao!

  4. #4
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Grazie.

    Scusa ma il nome file è questo: EV_2009_10_06.zip

    E la data è quella oggi-1, cioè ieri?

  5. #5
    Devi inserire degli if che gestiscano fine mese.
    Il nome del file che desideri lo generi dal seguente comando:
    set data=%anno%_%mese%_%giorno%
    ciao!

  6. #6
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da Dalton
    Devi inserire degli if che gestiscano fine mese.
    Scusa questa non l'ho capita, perchè dovrei farlo? ...

  7. #7
    codice:
    ex:
    set giorno=%DATE:~7,2% 01-1=30
    set mese=%DATE:~4,2% 11
    set anno=%DATE:~-4%   2009
    set data=%anno%_%mese%_%giorno%  2009_11_30 e non 2009_10_31
    di conseguenza dovresti settare qualcosa del genere:

    codice:
    if giorno = 1 then
    mese=mese-1 etc...

    ciao!

  8. #8
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Perdonami, ma continuo a brancolare nel buio... il controllo di cui dici devo prevederlo nel file bat?

    Adesso sono fermo qui:

    codice:
    set giorno=%DATE:~7,2%
    set mese=%DATE:~4,2%
    set anno=%DATE:~-4%
    set data=%anno%_%mese%_%giorno%.zip
    
    C:\Programmi\GnuWin32\bin\wget -P U:\Inetpub\wwwroot\appoggio\ -r -nd ftp://10.xx.xxx.xxx/uscite/L/EV/data

  9. #9
    codice:
    @echo off
    echo wscript.echo ^(Date^(^)- 1^)>yesterday.vbs
    for /f %%a in ('cscript //nologo yesterday.vbs') do set ydate1=%%a
    del yesterday.vbs
    set ydate1=%ydate1:/=%
    set m=%ydate1:~2,2%
    set d=%ydate1:~0,2%
    set y=%ydate1:~4,4%
    set ydate2=%y%_%m%_%d%
    C:\Programmi\GnuWin32\bin\wget -P U:\Inetpub\wwwroot\appoggio\ -r -nd ftp://10.xx.xxx.xxx/uscite/L/EV/EV_%ydate2%.zip
    ciao!

  10. #10
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.