Newsgroup: it.comp.os.dos
Titolo: file con data in output

Ciao a tutti,
Vorrei sapere come fare qundo un file batch creato porti la data del giorno
in cui il file è stato creato.
Sono riuscito a creare il rar ma la data la devo sempre cambiare a
mano....come posso fare per ottenerlo automaticamente?
Diciamo, per capirci, che il file in output sia
nomefile-data-di-creazione.rar
Grazie
Giuseppe

 mano....come posso fare per ottenerlo automaticamente?
Un procedimento c'è.. un po' arzigogolato.
1) crea un file di testo (SetComm.txt) con notepad e scrivici:
Set LaMiaData=
dove "LaMiaData" è il nome della tua variabile. IMPORTANTE: il testo NON 
DEVE AVERE A CAPO! Salvalo quando il cursore è appena dopo l'uguale e 
salvalo così.
2) reindirizza l'output del tuo comando su un secondo file di testo:
date/t > Data.txt
3) "Riunisci" i due file per creare un .bat che creerà la variabile:
copy SetComm.txt+Data.txt CreaVar.bat
4) esegui CreaVar.bat.
Se tutto va bene, CreaVar imposterà "LaMiaData" all'output di "date/t".
5) rinomina il file con "ren file.rar %LaMiaData%.rar
Tieni comunque presente che le variabili di ambiente esistono solo a 
partire dalla sessione "DOS" che le ha create e in quelle "figlie".
P.S. Avevo inventato questo procedimento per un altro scopo.. Il 
riadattamento che ho fatto ora probabilmente potrebbe essere migliorato. 
Ma almeno hai qualche spunto..
-- 
		Luca Amicone
		(da casa)

Ho fatto come dici e arrivo alla crezione del file CreaVar.bat. Dopo averlo
lanciato l'ho aperto e ho notato che la var LaMiaData=mer 11/02/2003 e
all'interno del file .bat ho aggiunto il rinomina file .rar
ma non setta la data ma la stringa, cioè invece di avere
il file
backup-12/02/2003.rar
mi dà
backup-LaMiaData.rar


 backup-LaMiaData.rar
LaMiaData è una variabile.. per averne il valore e non il nome, dovresti 
usare il carattere %. Es.:
c:\>echo LaMiaData
LaMiaData
c:\>echo %LaMiaData%
mer 12/02/2003
-- 
			Luca Amicone
			ICQ: 14890779
--
	Vorrei vivere tutti i giorni
	come fossero l'ultimo, e l'ultimo come tutti.

Ciao Luca,
ho fatto come dici ma il file diventa
backup%LaMiaData%.rar cosě come la vedi....
avevo capito che la LaMiaData era una var ma non riesco a mostrarne il
contenuto.......
Ciŕ


 ho fatto come dici ma.....
Allora, ho rifatto tutto da capo, rinunciando alla variabile di ambiente.
Servono 2 files, e poi c'è il "Go.Bat" che esegue il tutto, creando e 
cancellando i files temporanei.
---Reneim.txt
Reneim
---end Reneim.txt
Serve per creare il .bat che eseguirà il rename vero e proprio. DEVE 
AVERE SOLO uno SPAZIO alla fine e NON un A CAPO. In questo esempio, sono 
in totale 7 bytes: "Reneim "
---Renaim.bat
ren *.rar backup-%2.rar
---end Renaim.bat
Qui hai la sintassi vera e propria dell'esecuzione del rename. "*.rar" 
diverrà il nome del file che avrai prodotto. E' ovvio che se lasci "*" 
TUTTI i files della directory con estensione .rar saranno rinominati. 8)
Il %2 è dovuto all'output di "data /t". Viene: "mer 12/02/2003". Ho 
ritenuto che il "mer" non ti fosse utile; il %2 infatti prende solo 
"12/02/2003"
---Go.bat
date /t > Data.txt
Copy /b Reneim.txt+Data.txt Temp.bat
call Temp
del Temp.bat
del Data.txt
---end Go.bat
Questo file è il "driver"; lo puoi aggiungere al tuo attuale. Come vedi, 
crea il file con la data e il comando di lancio per "Reneim.bat". Quindi 
lo richiama (con la "call", in modo da riprendere poi il controllo) e 
quindi cancella i files che ha utilizzato.
Il parametro "/b" serve per evitare "andate a capo" nel comando copy.
L'ho testato e dovrebbe funzionare. Fammi sape'..
-- 
			Luca Amicone
			ICQ: 14890779
--
	Tutti vogliono andare in paradiso, ma nessuno vuole morire.
		-- M. Twain

 ha scritto nel messaggio
news:b2dpno$nm$1...@newsreader.mailgate.org...


 Ciŕ
Mentre sulla linea di comando la sintassi %variabile% č corretta, in un file
batch devi radoppiare il segno % in questo modo: %%variabile%%
Quindi ciň che hai fatto fino ad ora č a posto, a patto che cambi la riga
ren file.rar %LaMiaData%.rar
con
ren file.rar %%LaMiaData%%.rar
Ciao!
Esteban