Subjack 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Hi, ich bin gerade am planen von einem neuen Projekt, wo Anlagendaten u. Anlagenparameter von einer Softwaresps (eine Sps die auf einem Windows PC läuft) gesichert werden. Das Problem dabei ist das die Softwaresps in einem bestimmten Zeitabstand diese Dateien in einen Windowsordner schreibt. Wenn aber in diesem Ordner schon Daten stehen werden sie einfach von der SPS überschrieben. Darum suche ich im Moment eine Lösung womit ich diese Daten in einem bestimmten Zeitraum (ca. alle 60s) aus dem Spsordner kopiere und diesen Daten in einem anderen Ordner eine vorlaufende Nummer oder sogar einen Datums- Zeitstempel im kopierten Dateiname verpasse. Ist so was möglich? Ich habe mir schon die zwei Tools xcopy und copy angeschaut nur wenn ich die Erklärungen von den Schaltern richtig verstanden habe kann ich dies mit diesen Tools nicht lösen oder??? Es kann natürlich auch ein Programm sein.... Habt ihr eine Lösung für mein Problem? Achso Windowsversion wird 2000 oder xp sein ... Zitieren Link zu diesem Kommentar
ChristianHemker 10 Geschrieben 10. September 2006 Melden Teilen Geschrieben 10. September 2006 Du könntest ein Script (Batch) schreiben, indem du mit Xcopy (besser Robocopy, suche mal danach) die notwendigen Dateien kopierst. Dieses lässt du dann vom Taskplaner alle X Minuten ausführen. Wobei ich den Sinn der ganzen Kopieraktionen jetzt nicht begriffen habe. Zitieren Link zu diesem Kommentar
Subjack 10 Geschrieben 25. September 2006 Autor Melden Teilen Geschrieben 25. September 2006 Du könntest ein Script (Batch) schreiben, indem du mit Xcopy (besser Robocopy, suche mal danach) die notwendigen Dateien kopierst.Dieses lässt du dann vom Taskplaner alle X Minuten ausführen. Wobei ich den Sinn der ganzen Kopieraktionen jetzt nicht begriffen habe. Diese ganze Kopieraktion brauch ich, weil sonst meine Sps immer die Datei überschreibt. z.B. um 11:30:00 Uhr steht in der Datei die Temperaturen von 11:29:00 Uhr bis 11:29:59. Dies wir z.B. in der Datei Temperaturen.log gespeichert. Um 11:31:00 würde mir jetzt die Sps die Temperaturen von 11:29:00 - 11:29:59 mit den Temperaturen von 11:30:00 - 11:30:59 überschreiben weil sie die neuen Temperaturen in dieselbe Datei (Temperaturen.log) schreibt und die Werte die vorher drin stehen raus löscht bzw. überschreibt. Da ich aber diese Temperaturen dokumentieren muss benötige ich alle Werte zu jeder Uhrzeit. Meine Vorstellung wäre das z.B. die Datei Temperaturen.log nach dem kopieren in einen anderen Ordner den Dateinamen Temperaturen(Datum)_(Zeit).log hat. Wäre so was möglich? Wie meinst du das mit Robocopy..... ? Zitieren Link zu diesem Kommentar
humpi 11 Geschrieben 25. September 2006 Melden Teilen Geschrieben 25. September 2006 Hi, so könnte es bei dir klappen. Mach dir eine Batch mit folgendem Inhalt: rem *** Es wird eine Datei mit Datum kopiert. *** FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%b%%c%%d copy C:\temp\Beispiel.txt C:\temp\%CDATE%-Kopiert.txt Zitieren Link zu diesem Kommentar
Subjack 10 Geschrieben 25. September 2006 Autor Melden Teilen Geschrieben 25. September 2006 Hi,so könnte es bei dir klappen. Mach dir eine Batch mit folgendem Inhalt: rem *** Es wird eine Datei mit Datum kopiert. *** FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%b%%c%%d copy C:\temp\Beispiel.txt C:\temp\%CDATE%-Kopiert.txt habe das Skript leicht abgeändert und mal ausgeführt bekomme dies im cmd angezeigt rem *** Es wird eine Datei mit Datum kopiert. *** FOR /F "tokens=1,2,3,4 delims=/. " %a in ('date/T') do set CDATE=%b%c%d set CDATE=092006 copy C:\beispiel.txt C:\test\092006-Kopiert.txt 1 Datei(en) kopiert. pause Drücken Sie eine beliebige Taste . . . Das sieht sehr gut aus, geht das auch das der Dateiname z.B. so aus sieht: 1254 250906.txt (Zeit Datum.txt -> hhmm ttmmjj.txt) ??. Würde mir das Skript auch gerne selber anpassen komme nur nicht mit den Schaltern und Variablen zurecht. Mal eine ganz andere Frage, könnt Ihr Literatur zum schreiben von Batchdatei empfehlen, wo man sowas nachschlagen kann? Zitieren Link zu diesem Kommentar
ChristianHemker 10 Geschrieben 25. September 2006 Melden Teilen Geschrieben 25. September 2006 Okay, jetzt verstehe ich den Sinn hinter der Kopieraktion :) Hier ist eine Auflistung aller befehle zu finden: batch-programmierung und msdos-befehle [www.AtWillys.de] batchprogrammierung - Google-Suche Zitieren Link zu diesem Kommentar
humpi 11 Geschrieben 25. September 2006 Melden Teilen Geschrieben 25. September 2006 Hi, schau dir mal dieses Tool an > NAMEDATE: Add a date to a given filename oder mit Bordmittlen: for /F "tokens=1-4 delims=/- " %%a in ('date/T') do set CDATE=%%b%%c%%d for /F "tokens=1-4 delims=:., " %%a in ('time/T') do set CTIME=%%a%%b%%c copy c:\temp\beispiel.txt c:\temp\%CTIME%%CDATE%kopiert.txt Zitieren Link zu diesem Kommentar
Subjack 10 Geschrieben 25. September 2006 Autor Melden Teilen Geschrieben 25. September 2006 for /F "tokens=1-4 delims=/- " %%a in ('date/T') do set CDATE=%%b%%c%%d for /F "tokens=1-4 delims=:., " %%a in ('time/T') do set CTIME=%%a%%b%%c copy c:\temp\beispiel.txt c:\temp\%CTIME%%CDATE%kopiert.txt Hi!!!! Also erstmal humpi und ChristianHemker viiiiiiieeeeeelen Dank!!!!!!! humpi habe dein Skript ein wenig abgeändert, weil irgentwie das Datum nicht im Dateinamen war. Hab en bisschen rumgebastet und habe das raus bekommen: C:\>rem *** Es wird eine Datei mit Datum kopiert. *** C:\>for /F "tokens=1-4 delims=/- " %a in ('date/T') do set CDATE=%a%b%c C:\>set CDATE=25.09.2006 C:\>for /F "tokens=1-4 delims=:., " %a in ('time/T') do set CTIME=%a%b%c C:\>set CTIME=1740 C:\>copy c:\beispiel.txt c:\test\1740_25.09.2006_Temperaturen.txt 1 Datei(en) kopiert. C:\>pause Drücken Sie eine beliebige Taste . . . habe das -> do set CDATE=%%b%%c%%d in -> do set CDATE=%%a%%b%%c abgeändert und da stand dann auf einmal das Datum mit Punkt im Dateinamen drin *freu* hab aber trotzdem kein Plan wieso :D Nochmal vielen Dank!!!!! würde jetzt gerne mit dir en Bierchen trinken ;) Zitieren Link zu diesem Kommentar
Der-Sensenmann 10 Geschrieben 25. September 2006 Melden Teilen Geschrieben 25. September 2006 suche mal nach namedate :) das programm kann dateien umbennenen und mit datum/uhrzeit versehen :) Zitieren Link zu diesem Kommentar
Subjack 10 Geschrieben 25. September 2006 Autor Melden Teilen Geschrieben 25. September 2006 humpi hat das schon geschrieben, trotzdem danke Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.