godofwar
Goto Top

Xcopy *.avi in %date%(und einer fortlaufenden zahl).avi

Hallo leute

Ich hab ein realtiv grosses Problem.

Also ich habe eine webcam und mit dem dazugehörigen programm nimmt diese bilder auf.
Die werden dann in
C:\Documents and settings\%username%\my documents\my pictures\imagestudio\album\bewegungsbilder (bewegung 1.avi u.s.w) gespeichert.

Ich habe deshalb ein BAT File erstellt indem es alles von diesem ordner nimmt und umschreibt.

@echo off
:START
xcopy "C:\Documents and settings\%username%\my documents\my pictures\imagestudio\album\bewegungsbilder\*.avi" C:\TEST\%date%.avi /y /f
del "C:\Documents and settings\%username%\my documents\my pictures\imagestudio\album\bewegungsbilder\*.avi"
goto START

naja mein problem lieg in dem C:\TEST\%date%.avi weil am tag ca 20 videos aufgenommen werden und somit die ersten paar überspielt werden würden.
mit C:\TEST\%date%%time%.avi geht es leider auch nicht weil %time% immer sowas ausgibt 10:03:12.23 welches windows nicht als filename akzeptiert.

Gibt es eine möglichkeit einen counter einzubauen. damit es dann 29.03.2007_1.avi u.s.w heist?
oder eine möglichkeit die zeit so einzufügen das daraus 29.03.2007_10.03.27.23.avi wird? (also ohne doppelpunkt)


Mfg GOD_OF_WAR

Content-ID: 55352

Url: https://administrator.de/contentid/55352

Ausgedruckt am: 08.11.2024 um 13:11 Uhr

SteinBeiser
SteinBeiser 29.03.2007 um 11:34:20 Uhr
Goto Top
probier mal das:
%DATE:~6%%DATE:~3,2%%DATE:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%
bastla
bastla 29.03.2007 um 11:43:51 Uhr
Goto Top
Hallo GODOFWAR und willkommen im Forum!

Für das %time%-Problem gäbe es folgenden Lösungsansatz:
set Zeit=%time::=.%
set Zeit=%Zeit:,=.%
echo %Zeit%
echo %Zeit:~0,8%
Falls Dir nicht besonders an den Hundertstelsekunden gelegen ist, kannst Du auch die Verwendung der Variablen %Zeit% auf die ersten 8 Stellen einschränken (wie im zweiten "echo"-Beispiel gezeigt).
Mit Zähler würde das Ganze so aussehen:
Vor dem ":START" einen Startwert setzen, zB
set /a Nummer=101
und zum Weiterzählen vor dem "goto START"
set /a Nummer+=1
Im "xcopy"-Befehl könntest Du dann als Ziel schreiben (um eine 2-stellige Nummer mit führender Null zu erhalten):
... C:\TEST\%date%_%Nummer:~-2%.avi

Grüße
bastla
GODOFWAR
GODOFWAR 29.03.2007 um 14:11:17 Uhr
Goto Top
Hallo nochmal

ich habe nun ein weiteres problem

@echo off
:START
xcopy "C:\Documents and settings\%username%\my documents\my pictures\imagestudio\album\bewegungsbilder\*.avi" C:\TEST\%DATE:~6%%DATE:~3,2%%DATE:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%.avi /y /f
del "C:\Documents and settings\%username%\my documents\my pictures\imagestudio\album\bewegungsbilder\*.avi"
goto START


darin gibt es nur 1 porblem und zwar das es immer abfragt ob es ein file oder ein directory machen soll (was immer ein f drücken zurfolge hat) (und man es somit nicht laufen lassen kann.)

wenn da auch einer nen vorschlag hat wär geil ^^

mfg GODOFWAR
Biber
Biber 29.03.2007 um 15:57:23 Uhr
Goto Top
Moin GODOFWAR,

bin ein wenig verwirrt, weil Du in Deiner Eröffnungsfrage schriebst "mit C:\TEST\%date%%time%.avi geht es leider auch nicht", was darauf schliessen lässt, dass alle aktuellen Dateien in ein Verzeichnis geMOVEd werden sollen.

In Deinem letzten Kommentar drückst Du aber die Taste "F" für "File", weil es doch nur eine Datei ist??

Ich gehe mal davon aus, dass es sich bei "C:\TEST\%DATE:~6%%DATE:~3,2%%DATE:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%.avi"
um ein Verzeichnis handeln soll (sonst würde ja nur genau eine Datei ankommen).

In diesem Fall einfach einen Backslash oder ein "\*.*" anhängen.
...XCopy sourcekrams C:\TEST\%DATE:~6%%DATE:~3,2%%DATE:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%.avi\ /y /f

Aus Les- und Wartbarkeitsgründen würde ich Dir aber empfehlen, doch eine Zwischenspeicherung dieses Timestamps in eine Variable zu machen.
Und dann, wie auch der ursprüngliche Plan war, ein Verzeichnis dieses Namens anzulegen (md c:\test\%TimeStamp%.avi) und nicht mit XCopy sondern mit dem etwas schlankeren MOVE-Befehl die Dateien in dieses existierende Verzeichnis zu verschieben.

Gruss
Biber
GODOFWAR
GODOFWAR 29.03.2007 um 16:25:04 Uhr
Goto Top
/closed ^^ habs in einem anderen thema eröffnet da dieses hier eigentlich nicht dazugehört sondern einzeln war

vielen dank an die antworter ;D