|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Dec 2005
Città: Velletri
Messaggi: 214
|
[Batch] Rinominare un file in base alla data
Vorrei cercare di creare un file batch per creare un file con il nome determinato in base alla data corrente: ho un file "vuoto.xls" che ogni mese devo usare per creare dei nuovi file "gennaio.xls", "febbraio.xls", ...
Credo che una sequenza di istruzioni in un file .bat sia la cosa più semplice (vista anche l'"utonto" destinatario dell'applicazione) ma non riesco a creare uno switch in base alla data corrente letta dal comando date. Potete darmi qualche consiglio? |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Jul 2009
Messaggi: 81
|
Ciao, ho visto adesso il tuo post perchè mi sono iscritto dopo che hai postato questa discussione...
Problema risolto, eccoti il codice: if '%Date:~3,2%'=='01' (ren vuoto.xls "gennaio.xls") else if '%Date:~3,2%'=='02' (ren vuoto.xls "febbraio.xls") else if '%Date:~3,2%'=='03' (ren vuoto.xls "marzo.xls") else if '%Date:~3,2%'=='04' (ren vuoto.xls "aprile.xls") else if '%Date:~3,2%'=='05' (ren vuoto.xls "maggio.xls") else if '%Date:~3,2%'=='06' (ren vuoto.xls "giugno.xls") else if '%Date:~3,2%'=='07' (ren vuoto.xls "luglio.xls") else if '%Date:~3,2%'=='08' (ren vuoto.xls "agosto.xls") else if '%Date:~3,2%'=='09' (ren vuoto.xls "settembre.xls") else if '%Date:~3,2%'=='10' (ren vuoto.xls "ottobre.xls") else if '%Date:~3,2%'=='11' (ren vuoto.xls "novembre.xls") else if '%Date:~3,2%'=='12' (ren vuoto.xls "dicembre.xls") Funziona ![]() ![]() Ti spiego: 1. %Date:~3,2% indica il mese in cui ci troviamo 2. 01 fino a 12, sono i mesi, e a seconda del mese scritto in numeri, con l'if lo scrivi in lettere 3. Ho dato per scontato che tu apra il .bat nella stessa cartella in cui c'è vuoto.xls, se non è così per (ren vuoto.xls bla bla bla) dovrai scrivere anche il percorso in cui si trova l'.xls, ad esempio --> (ren "F:\vuoto.xls " bla bla bla): il percorso se contiene spazi tra una parola va tra ", ma io ti consiglio, anche perchè lo faccio anch'io di metterli sempre... è stato un piacere aiutarti... |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Dec 2005
Città: Velletri
Messaggi: 214
|
Grazie mille! Era proprio il suggerimento che mi serviva e non riuscivo a trovare nel marasma di Google.
Ora però ti ancora un'altra cosa impossibile: oltre al mese so catturare anche l'anno ma a Gennaio dovrei rinomare il file vuoto.xls in "dicembre 'anno'.xls" dove anno è quello precedente a quello mostratomi dal comando Date. E' una cosa fattibile oppure mi conviene farlo a mano? |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
|
Quote:
![]() set anno_corr=%Date:~6,4% set /A anno_prec=%anno_corr%-1 quindi a sto punto if '%Date:~3,2%'=='01' (ren vuoto.xls dicembre%anno_prec%.xls) non ho ben capito se vuoi rinominare quello di dicembre prima....oppure a gennaio creare quello di dicembre.... cmq basta che adatti la sintassi come vuoi ![]() anche se secondo me fai prima a mettere direttamente l'anno corrente quando lo crei ![]()
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi. L'una o l'altra inutile scandalizzarsi.[plutus] Ultima modifica di zuper : 23-07-2009 alle 18:19. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:42.