Archiv verlassen und diese Seite im Standarddesign anzeigen : .bat Datei zum Kopieren?
Durcairion
2005-01-09, 19:31:07
Also ich hatte in letzter Zeit ab und zu mal das Problem das mein Miranda sich aufhängt und die mirandaprofile.dat dann beschädigt war. Ergebnis war das ich sie löschen musst alles neu einstellen und die kompletten Histories weg waren.
Nun hab ich alles eingerichtet und gemerkt das man durch Kopieren und späteres Umbenennen den akteullen Stand sozusagen "sichern" kann.
Nun hab ich mir überlegt kann man doch sicher eine .bat schreiben die mir die mirandaprofile.dat im Ordner vom Programm ausliest und diese einfach in einem eigenes dafür angelegten Ordner reinkopiert.
So das dort dann ein Mirandaprofile1.dat 2.dat 3.dat usw. entsteht und ich weis die mit der höchsten Nummer hat die neusten Daten?
Geht sowas?
mfg,
soucy
Durcairion
2005-01-09, 20:28:51
Also das ichs nun über eine .bat in einen bestimmten Ordner kopiere hab ich schon hinbekommen.
Nur schaff ich es nicht, das es nummerisch nummeriert wird und die Zahl immer um eins ansteigt.
mfg,
soucy
DerGute
2005-01-09, 21:14:52
was mir spontan einfallen würde:
wenn du den befehl so machst:
copy miranda.dat miranda_%date%.dat
dann nummeriert er die datei jeweils mit dem aktuellen datum. wenn du pro tag mehrere kopien anlegen willst, kannst du auch noch die variable %time% dranhängen,dann schreibt er dir die aktuelle uhrzeit auch noch in den dateinamen
DocEvil
2005-01-09, 21:35:00
was mir spontan einfallen würde:
wenn du den befehl so machst:
copy miranda.dat miranda_%date%.dat
dann nummeriert er die datei jeweils mit dem aktuellen datum. wenn du pro tag mehrere kopien anlegen willst, kannst du auch noch die variable %time% dranhängen,dann schreibt er dir die aktuelle uhrzeit auch noch in den dateinamen
ich glaub das klappt nicht so einfach da im datums-string ein leerzeichen und im zeit-string ein doppelpunkt drinnsteckt.
Formica
2005-01-09, 22:36:53
also lasst mal den maista ran :cool:
also mach ne bat datei dann fügst du dass ein (alles was unter dem strich ist) du musst die datei dann 3 mal starten dann gilt dieses axiom: datei1 ist immer die akutellste dann die zweitaktuellste ist immder datei2, datei3 ist immer die drittaktuellste... es geht nur bis 3 :D ; du musst verzeichnis und dateinamen ändern. also verzeichnis a ist das quellverzeichnis, verzeichnis b ist das backupverzeichnis, die dateien haben nummern drann. also z.b. 1,2,3 diese nummern darfst du nicht verändern sondern müssen da bleiben also z.b. aus dat1.dat machst du Mirandaprofile1.dat, aus dat2.dat machst du Mirandaprofile2.dat usw... :
____________________________________
cls
copy c:\b\dat2.dat c:\b\dat3.dat /Y
del c:\b\dat2.dat
if EXIST c:\b\dat1.dat (
ren c:\b\dat1.dat dat2.dat
) else copy c:\a\dat1.dat c:\b\dat1.dat /Y
copy c:\a\dat1.dat c:\b\dat1.dat /Y
Formica
2005-01-09, 22:45:37
also ich weiß nicht warum du es unendlich aufsteigend brauchst die datei mit nummern.. 1 datei als backup reicht doch schon oder ?
da würde dann schon eineinfacher copy befehl reichen..
naja meine version geht halt nur bis nummero 3 und wenn es unendlich steigen soll muss ich erst mal schauen ob ich das machen kann, wozu ich jetzt zu müde bin :)
littlejam
2005-01-09, 23:16:20
ich glaub das klappt nicht so einfach da im datums-string ein leerzeichen und im zeit-string ein doppelpunkt drinnsteckt.
Nein das Datum liegt im Format tt.mm.jjjj vor. Wenn man den Punkt nicht will, kann man die Datei auch miranda_%date:.=%.dat nennen. Das eliminiert die Punkte. Pfade mit Leerzeichen setzt man im übrigen in " dann klappt auch das.
Genauso gehts mit der Zeit: %time::=% gibt die Zeit ohne : aus.
Falls man die ms und das Komma in der Zeit nicht haben will, kann man vorher per SET MEINEZEIT=%TIME:~0,8% nur die ersten 8 Zeichen benutzen.
Gruß
vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd.