Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Batch-Datei mit den letzten 7 Tagen und von erhalten von schon vorhandenen Daten

Mitglied: Nuker5

Nuker5 (Level 1) - Jetzt verbinden

21.02.2006, aktualisiert 22.02.2006, 11127 Aufrufe, 5 Kommentare

Hallo, ich habe eine Frage zu einem Szenario das bei uns genutzt wird. Es werden Daten von einem Programm an ein anderes als Textdatei weitergegeben.
Um sicher zu sein, dass dabei alles richtig lief möchte ich die Textdatei gern archvieren, die vom 2. Programm gelöscht wird, wenn es alles importiert hat.
Die Batchdatei sollte folgendes leisten können:
1. Die Datei die entsteht wird in erstes in das Verzeichnis kopiert, wo das Kassensystem diese abholen soll, dabei muss es überprüfen, ob dort schon eine solche existiert und wenn ja dann anhängen
2. Dann muss es alle Sicherungen der letzten sieben Tage überprüfen und die die größer als 7 Tage sind löschen und die aktuelle als Sicherung erstellen.

Ich habe schon eine Beispieldatei im Internet gefunden, die Ähnliches macht und angepasst:
@echo off
if exist c:\zweites\import.imp TYPE ausgabe.imp >> c:\zweites\import.imp
if not exist c:\vectron\vcom.imp copy vcom.imp c:\vectron
copy ausgabe.imp 0.sik
set /a MaxFiles=7
set /a counter=0
for /f %%i in ('dir /A-d /b /o:- D *.sik') do call :loop %%i
goto end
:loop
set /a counter+=1
if %counter% GTR %MaxFiles% goto end
copy /y %%i %counter%.SIK
goto loop
:end

Probleme sind dabei, dass hier anscheinend nur Generationen gespeichert zu werden und das Datum scheint nicht berücksichtigt zu werden (also an einem Tag also auch mehrere Dateien vorkommen können). Weiterhin scheint die :End-Marke nicht so richtig zu funktionieren, denn er geht irgendwie nicht aus der Schleife raus, wenn das Kriterium erfüllt ist.

Ich hoffe ich habe nichts übersehen und wäre sehr dankbar für Hilfe, da meine DOS-Kenntnisse einige Zeit zurückliegen.

Vielen Dank

Nuker5
Mitglied: Midivirus
21.02.2006 um 15:48 Uhr
Sorry,

aber soweit meine Kenntnisse reichen, sind Batches nur hilfsmittel, die nur einfache Parameter lesen können.
Das Datum etc. kannst du mit einer höhren Sprache (Java, VB, ...) auslesen und auswerten lassen!

Weiß ja nicht, wie deine Programmierkenntnisse sind, aber sowas kann man ganz einfach in JAVA lösen!!!


Grüße
Midivirus
Bitte warten ..
Mitglied: Nuker5
21.02.2006 um 16:22 Uhr
Mit der Batch-Datei kann man das Datum auslesen und es funktioniert auch.
@echo off
::Format JJMMTT
dir *.SIK > file.dat
for /F "tokens=1,2,3 delims=. " %%i in ('findstr SIK file.dat') do call :SUB1 %%i %%j %%k
goto ENDE
:SUB1
set TEMPVAR=%3
set TEMPVAR=%TEMPVAR:~2,2%
set TEMPVAR=%TEMPVAR%%2%1
echo %TEMPVAR%
:ENDE
pause




Tjaaa, aber wie in das große ganze integrieren?

Grüße

Nuker5
Bitte warten ..
Mitglied: Nuker5
21.02.2006 um 16:22 Uhr
Mit der Batch-Datei kann man das Datum auslesen und es funktioniert auch.
@echo off
::Format JJMMTT
dir *.SIK > file.dat
for /F "tokens=1,2,3 delims=. " %%i in ('findstr SIK file.dat') do call :SUB1 %%i %%j %%k
goto ENDE
:SUB1
set TEMPVAR=%3
set TEMPVAR=%TEMPVAR:~2,2%
set TEMPVAR=%TEMPVAR%%2%1
echo %TEMPVAR%
:ENDE
pause




Tjaaa, aber wie in das große ganze integrieren?

Grüße

Nuker5
Bitte warten ..
Mitglied: Biber
21.02.2006 um 19:10 Uhr
Moin nuker5,

Varianten zu Deiner Anforderung hatte wir hier schon ein paarmal "Dateien nach gewissem Alter löschen" oder "Alle Dateien älter als x Tage löschen". Suche mal im Bereich "Batch & Shell" bitte. Da waren einige Strategien relativ ausführlich hergeleitet.

Wie mein vorredner schon richtig schrieb - Rechnen mit Datumswerten gibt es nicht (schlechte Nachricht), aber..
- mit einem JScript- oder VBScript-Schnipsel, der meinetwegen auch vom Batch erzeugt und aufgerufen wird, ginge es.
- und es gibt ein paar mitgelieferte Utilities, die mit dem "Dateialter in Tagen" rechnen können.
Schau Dir dazu mal den XCopy-Befehl oder auch den lustigen ForFiles-Befehl an.
Abhängig von deren Möglichkeiten würde aber unter Umständen ein ganz anderer Batchablauf entstehen.
-und dritte Ausweichmöglichkeit... Du kannst natürlich auch im Batch den relativ simplen Algorithmus für "Berechne aus Datum x das Datum x-7 Tage nachbilden.
So etwas hat Kollege maneich gerade vor ein paar Tagen hier im Forum gemacht bei einer Frage "Datum vom Vortag im Batch berechnen" oder so ähnlich.

Ich würde die Strategie davon abhängig machen, wie robust und kompatibel der Batch sein soll. Und wenn der auf verschiedenen Windows-Rechnern mit verschiedenen Win-Versionen und unterschiedlichen Benutzern gestartet werden wird, dann würde ich empfehlen auf eine eigene Berechnung des "heute-vor-einer-Woche" zu verzichten und die Features von XCopy zu nutzen.

Gruß Biber
Bitte warten ..
Mitglied: Nuker5
22.02.2006 um 14:38 Uhr
Danke Biber,

ich versuch mich mal an die XCOPY-Variante oder die Berechnen von Tag x-7

Viele Grüße

Nuker5
Bitte warten ..
Ähnliche Inhalte
Windows Server

ShadowCopies - nicht alle Tage vorhanden unter Vorgängerversionen

Frage von staybbWindows Server2 Kommentare

Hallo, auf einem SBS 2011 sind Shadowcopys auf einem Volumen mit 2 shares konfiguriert. Die Einstellung ist wie folgt ...

Batch & Shell

Batch-Datei soll überprüfen ob ein Verzeichnis vorhanden ist

gelöst Frage von synapsenstauBatch & Shell7 Kommentare

Moin, wie bringe ich bitte einer Batch-Datei bei, das sie "schaut" ob ein Verzeichnis vorhanden ist und wenn nicht ...

Batch & Shell

Batch ordner durchsuchen und letzte Datei finden

gelöst Frage von nullpeilerBatch & Shell12 Kommentare

Hallo Admins, ich möchte folgendes durchführen. 1. Einen Ordner nach jpg dateien mit laufender Nummer durchsuchen und die letzte ...

Datenbanken

MySQL - Abfrage um letzte Einträge unterschiedlicher Objekte zu erhalten?

gelöst Frage von mabue88Datenbanken2 Kommentare

Hallo, ich sitze vor einer SQL-Abfrage, die ich einfach nicht hinbekomme. Folgende Tabelle liegt vor: Nun benötige ich eine ...

Neue Wissensbeiträge
Windows 10
Windows 10 - Probleme mit Point-And-Print
Tipp von emeriks vor 4 StundenWindows 10

Hi, wir kämpfen z.Z. mit einigen Druckertreibern, welche unter Win10 beim Verbinden eines Druckers von Printserver mit dem Dialog ...

Windows 10

Windows 10 1803 - Ihr Roamingbenutzerprofil wurde nicht vollständig synchronisiert

Anleitung von Deepsys vor 6 StundenWindows 10

Bei allen Windows 10 1803 PCs traten Probleme mit den Servergespeicherten Profilen auf. Das Abmelden dauerte sehr lange und ...

Exchange Server
Exchange - Fehler mit 2018-07 Sicherheitsupdate
Tipp von ArnoNymous vor 2 TagenExchange Server7 Kommentare

Hallo, es gibt mal wieder Freude mit den MS-Updates. KB4338814 führt dazu, dass der Exchange keine Mails mehr zustellt. ...

Suche Projektpartner

PC Recycling Projekte mit Flüchtlingen und Kids suchen Materialspenden und Mitmacher!

Erfahrungsbericht von NettePCyclePiraten vor 3 TagenSuche Projektpartner9 Kommentare

Hallöchen liebe Kollegen, ich betreue zwei PC-Gruppen im Raum Dortmund: "Ne#e PCycle Pir@ten" & "PCschr@uber Br@mbauer" Wir sind eine ...

Heiß diskutierte Inhalte
Batch & Shell
PowerShell Auflösung zu .txt (Skript als exe) falsche Auflösung?!
Frage von timsen-96Batch & Shell20 Kommentare

Ich habe folgendes Skript um die Bildschirmauflösung herauszufinden, was auch in PowerShell super funktioniert: Add-Type -AssemblyName System.Windows.Forms $Width = ...

Humor (lol)
Windows 10 - immer für Überraschungen gut
gelöst Frage von HenereHumor (lol)18 Kommentare

Eben nach (beim) installieren der neuesten Updates für 1803 :-) Und sorry fürs Handyfoto, aber der musste sein. Nach ...

Exchange Server
Exchange Backup 10 Jahre Aufbewahrung
Frage von arccosExchange Server17 Kommentare

Hallo zusammen. Aktuell beschäftigen mich ein paar Fragen zum Thema Office365/ Exchange. 1.10 Jahre Aufbewahrungspflicht sicherstellen 2.Kann man als ...

Samba
Samba-NAS Zugriff verweigert
gelöst Frage von VernoxVernaxSamba15 Kommentare

hallo ich schaffe es einfach nicht meinem User Rechte zum schreiben zu geben. Ich habe dies alles auf nem ...