Avatar billede shooter Novice
20. november 2007 - 15:12 Der er 4 kommentarer og
1 løsning

styr navnet på en outputfil i dos batfil

Hej

Jeg har en dos batfil der afvikler et program og sender output ud i en logfil.
Jeg vil gerne styre output-loggens navn således at det indeholder date og time,  how to?
bat filen ser principielt således ud:

test.exe /arg1 > logfil.txt
test.exe /arg2 >> logfil.txt

I stedet for logfil.txt vil jeg gerne have noget lignende
log&`date/T`&`-`&`time/T`&.txt
eller oversat:
log2007-11-20-15:12.txt

(Havde det været unix havde det taget mig 7.9s at lave det)
Avatar billede pidgeot Nybegynder
20. november 2007 - 15:26 #1
Der er jo altid %DATE% og %TIME% - men da de som udgangspunkt bruger det lokale format, så får du et problem i og med at tidspunktet indeholder : (hvilket ikke duer med NTFS).

Som workaround kunne du lave en ekstra lille bat-fil der kalder den anden:

echo %DATE%-%TIME% > temp.tmp
for /f "delims=:,tokens=1,2,3" %%i in (temp.tmp) do dinbat.bat %%i%%j%%k.txt
del temp.tmp

...og så bruge %1 i stedet for logfil.txt i din anden fil.

Du kan også kombinere dem til en .bat fil ved at gemme det for finder i en miljøvariabel, eller for den sags skyld bare gentage den linje med de enkelte kommandoer.
Avatar billede smitten1 Nybegynder
20. november 2007 - 15:27 #2
virker i xp:

set logname=log%date%-%time:~0,-6%.txt

test.exe /arg1 > %logname%
Avatar billede smitten1 Nybegynder
20. november 2007 - 15:32 #3
og så det med kolon...

set logname=%logname::=-%
Avatar billede shooter Novice
20. november 2007 - 15:48 #4
Og hvis man helst vil undgå - så:
set logname=%logname:-=%

Smitten1 - lige hvad jeg skulle bruge :-))

læg et svar og du er 30 gyldne point rigere!
Avatar billede smitten1 Nybegynder
21. november 2007 - 11:28 #5
ok :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester