# Batch: Datum+Uhrzeit als Dateiname umbennen



## bombbass (29. September 2009)

servus,
habe einen Ordner, welcher mehrmals am Tag mit Dateien gefüllt wird.

Nun möchte diese Dateien umbennen, sobald ich mein Batch laufen lasse.

Mein jetziger Code, was leider nicht t:

```
echo start umwandlung

rename hb_bestand*.* hb_bestand%date%,%time%.txt
```

fehlermeldung:
ich erhalte nur Dateinamen mit: hb_bestand.txt

ausser, ich mache dieses:

```
echo start umwandlung

rename hb_bestand*.* hb_bestand%date%.txt
```

dann erhalte ich den dateinamen nur mit dem aktuellen datum... 

jedoch brauche ich auch die Uhrzeit... 

vielen dank im voraus

vg

bombbass


----------



## vop (29. September 2009)

Ich verwende für soetwas immer gerne einen Trick:
1. Ich leite einen dir - Befehl in eine Textdatei um
dir hb_bestand*.* > liste.txt
2.  ich bearbeite die Textdatei in einem Editor oder Tabellenkalkulationsprogramm
3. Ich speichere die Veränderungen als .bat-Datei
4. ich führe die Bat-Datei aus.

vop


----------



## bombbass (29. September 2009)

danke für deinen tip, bringt mich aber nicht weiter...
ist zu umständlich...

es muss doch machbar sein, dass der neue dateiname einfach das datum und die zeit beinhaltet
ich meine, dass nur mit dem datum klappt doch auch...


----------



## Johannes7146 (29. September 2009)

Das Problem ist das %TIME% zeichen ausgibt die nicht in einen Dateinamen gehören.
%TIME% gibt den string 14:18:34,45 
mit %time:~6,2% wird von dem string nur ab dem 6. Zeichen 2 Zeichen ausgeben also nur die 34
um die datei test.txt umzubennen sollte folgendes gehen:


```
rename test.txt test_%date%-%time:~0,2%_%time:~3,2%_%time:~6,2%.txt
```


----------

