|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
[DOS] Inserire data di sistema nel nome del file
Buongiorno! In un file batch avrei la necessità di inserire la data di sistema nel nome del file, per eseguire dei backups incrementali tramite winrar.
Ho fatto così: nome_del_file_%DATE%.rar ma non va bene, poichè mi viene restituito "mer 25/10/2006", invece io vorrei concatenare solo la data, in questo modo: nome_del_file_25/10/2006.rar Come posso fare? Grazie!
__________________
Careful With That Axe |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
I batch purtroppo sono (molto) limitati. Io personalmente ti consiglierei di usare dei linguaggi di scripting (es. Perl, Python o anche WSH) ma non so quali siano le tue conoscenze tecniche.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Feb 2003
Messaggi: 947
|
Va bene la sintassi "nome_del_file_%DATE%.rar", ma:
1) Apri "Pannello di controllo" 2) Apri "Opzioni internazionali e della lingua" 3) Click su "Personalizza" 4) Click su "Data" 5) Selezionare come "Separatore data" il caraattere "-" al posto del carattere "/" 6) Confermare il tutto In modo da ottenere un nome di file "valido". |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Ho modificato il separatore della data, non ci avevo fatto caso
Comunque il problema è lo spazio tra mer e la data "mer 25-10-2006". Devo riuscire ad avere solo la data (senza il mer).
__________________
Careful With That Axe |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
...Che dite, non vi viene in mente niente?
![]()
__________________
Careful With That Axe |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Rimango della idea che per queste cose è meglio utilizzare un linguaggio di scripting, sicuramente più potente dei batch! Ad esempio in Perl, la generazione del nome del file si può fare così: Codice:
use POSIX; $data = strftime "%d-%m-%Y", localtime; $nomefile = "nome_del_file_$data";
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Beh, in effetti nel 2006 mi sembra un po' "strano" usare i file batch (che sono davvero limitati), quando esistono gli script più seri. Io non l'ho quasi mai utilizzato, ma se non vuoi usare un interprete dedicato per il tuo script (es. perl) puoi usare Microsoft Script Host (che è incluso di default ne SO, ed utilizza una sintassi stile VBScript).
EDIT: Prova a copiare questo codice in un file chiamato "nomescript.vbs" (è importante l'estensione, il nome lo scegli tu): Codice:
data = Day(Now) & "-" & Month(Now) & "-" & Year(Now) nomeFile = "nome_del_file" & data Wscript.echo nomeFile L'ultma riga del codice l'ho messa solo per visualizzare il risultato, tu poi ci fai quello che vuoi NOTA: il comando di console per lanciare lo script è cscript nomefile.vbs EDIT 2: IMHO il file batch erano comunque anacronistici anche quando sono usciti, considerando lo scripting sh/bash/tcsh/ecc... esistente su linux già a quel tempo.
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson Ultima modifica di -fidel- : 26-10-2006 alle 12:32. |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
OK, ragazzi, utilizzero uno script.
Grazie! Vi faccio sapere.
__________________
Careful With That Axe |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Quote:
Grazie mille!
__________________
Careful With That Axe |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:27.




















