[Win7 en 2003] Batchscript file renamen met timestamp

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Mescalino
  • Registratie: Maart 2000
  • Laatst online: 30-11-2023
@ECHO on

ping 127.0.0.1 -n 5 > c:\pinglog601\ping.log

Ren C:\pinglog\ping.log ping_%date:~4,2%%date:~7,3%%date:~12,4%_%time:~0,2%u%time:~3,2%m%time:~6,2%s.log
==================
Dit script heeft als output:
ping_0-5-22_11u05m41s.log

maar moet zijn:
ping_10-05-2012_11u05m41s.log

Wat is er niet correct aan mijn syntax?
Overal waar ik google kom ik hier op uit.

(test dit script op win 7 enterpise, op windows server 2003 waar hij uiteindelijk moet draaien renamed hij de file niet eens)
IP van local host is puur voor testen.

Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Mescalino schreef op donderdag 10 mei 2012 @ 11:19:
Overal waar ik google kom ik hier op uit.
Je moet niet op Google zoeken naar een kant-en-klaar script. Hooguit kan je Google (of GOT-search) gebruiken voor de juiste oplosrichting en dan ga je vervolgens zelf kijken hoe het script in elkaar zit.

C:\>echo %date%
do 10-05-2012
C:\>echo %date:~4,2%
0-

Lijkt me een helder: pas de uitvoer een beetje aan naar de taal van jouw OS. En let dus op dat testen op machine 1 geen garantie is dat het op machine 2 ongewijzigd werkt. Als je zekerder wilt zijn van voorspelbare werking, wil je vorm van inhoud scheiden en dus geen batch gebruiken maar bijv powershell.

OS opgenomen in de topictitel.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

  • Mescalino
  • Registratie: Maart 2000
  • Laatst online: 30-11-2023
De server is engels en gebruikt " \ " in de datum.
Daarom werkt het daar niet.

Ik ga nog even rondkijken.

[ Voor 15% gewijzigd door Mescalino op 10-05-2012 11:37 ]