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

Daten nach Datum suchen, Ordner mit dem Datum anlegen und Daten hineinkopieren.

Frage Entwicklung Batch & Shell

Mitglied: SWuser

SWuser (Level 1) - Jetzt verbinden

01.10.2009 um 11:31 Uhr, 6525 Aufrufe, 8 Kommentare

Hallo Community,
ich bin seit 2 Monaten Azubi zum IT-Kaufmann und soll nun ein kleines Batch-Programm schreiben. Leider habe ich davon fast überhaupt keine Ahnung.

Zu meinem Problem:

Es werden täglich zig automatische Druckaufträge als *.txt generiert in einem Ordner abgelegt, gedruckt und in eine *.dat-Datei umgewandelt (Zwecks Archivierung). Das ist alles schon in einem Batch-Programm so hinterlegt.
Nun sollen die *.dat-Dateien täglich in einen entsprechenden Monatsordner kopiert werden.
Das ist jetzt meine Aufgabe dieses zu programmieren.

Beispiel:

im Ordner X:\Etiketten\Drucker_01\ liegen
Eingang01.dat
Eingang02.dat
Eingang03.dat
Ausgang01.dat (usw)

im Ordner X:\Etiketten\Drucker_02\ liegen
Ausgang01.dat
Ausgang02.dat
Eingang01.dat
Eingang02.dat (usw)

es gibt dann noch viele andere Ordner!

alle sind unterschiedlich und haben ein unterschiedliches Datum.
nun sollen die *.dat-Dateien in ein extra Laufwerk\Ordner (Bsp.: Z:\Etiketten\Archiv\Drucker_01\Monat\) archiviert werden.

ich hoffe, ich konnte mein Problem gut erläutern und hoffe auf Denk- und/oder Lösungsansätze.

Vielen Dank im Vorraus!
Gruß Felix
Mitglied: manuel-r
01.10.2009 um 11:47 Uhr
Das geht ganz einfach mit xcopy und einem geplanten Task. Schreib dir eine Batch, die ungefähr so aussieht:
01.
setlocal 
02.
set erstelldat=%date:.=-% 
03.
xcopy <quelle> <ziel>\%erstelldat%\ /d:%erstelldat% /e /v /c /i /y
Ist ungetestet, sollte aber so hinhauen.

Manuel
Bitte warten ..
Mitglied: SWuser
01.10.2009 um 12:09 Uhr
Danke für die schnelle Antwort!

Das klappt noch nicht so ganz...:

Jetzt erstellt er mir zwar den Ordner mit einem Datum (das sieht auch schon ganz gut aus!), er nimmt aber das heutige Datum, er sollte aber das Datum nehmen, an dem die *.dat-Datei zuletzt geändert wurde. Kann man das irgendwie realisieren?
Bitte warten ..
Mitglied: manuel-r
01.10.2009 um 12:16 Uhr
Das verstehe ich jetzt nicht ganz.
Die Ausgangslage war doch, das über den ganzen Tag im Quellverzeichnis diverse Dateien erstellt werden. Am Ende des Tages sollen die dann zusätzlich in einen Archivordner kopiert werden. Jedoch nur die von heute.
Nehmen wir also an heute werden 20 Dateien im Quellverzeichnis erstellt oder geändert. Jetzt kommt heute Nacht um 23:50 der geplante Task und startet die Batch. Dann wird alles mit Datum von heute in einen Ordner mit Datum von heute kopiert.
Morgen Abend kommt der geplante Task nochmal und kopiert die Dateien von morgen, weil morgen heute ja gestern ist
Und so läuft das dann Tag für Tag.
Bitte warten ..
Mitglied: SWuser
01.10.2009 um 12:23 Uhr
Ja, an und für sich ist das ja richtig, was du schreibst.
So funktioniert das ja auch, außer das er mir die Dateien eines Monats immer in den gleichen Ordner schieben soll, sprich: nicht jeden Tag einen neuen Ordner erstellen soll.
Soweit klappt das ja schon super

Jetzt habe ich aber noch einen bzw zwei Ordner, in denen vorher noch nichts gelöscht, bzw wegkopiert wurde. D. h. die sind noch voller alter Dateien (deswegen fragte ich oben auch so pauschal )
Bitte warten ..
Mitglied: manuel-r
01.10.2009 um 12:34 Uhr
Ok, dann mach's halt so:
01.
setlocal 
02.
set erstelldat=%date:.=-% 
03.
set targetdat=%erstelldat:~3% 
04.
xcopy <quelle> <ziel>\%targetdat%\ /d:%erstelldat% /e /v /c /i /y
Mit dem ersten set wird in die Variable erstelldat das aktuelle Datum geschrieben und gleichzeitig Punkte durch Striche erstezt, weil xcopy das so erwartet. Mit dem zweiten set werden dann die ersten drei Zeichen (also Tag und Trennzeichen) entfernt und der Variable targetdat zugewiesen.
Um die schon älteren Datein zu behandeln schaust du dir einfach mal die Hilfe zu xcopy an und wozu der schalter /d dient.
Bitte warten ..
Mitglied: SWuser
01.10.2009 um 13:17 Uhr
Okay, danke

Ein kleines Problem habe ich dann noch:

Er kopiert mir jetzt nur Dateien vom Mai 2009, alle anderen bleiben unangetastet; diese kopiert er auch nur in den Ordner mit dem heutigen Datum.

Vielen Dank, ist echt super, dass du mir so viel hilfst!!
Bitte warten ..
Mitglied: Biber
01.10.2009 um 18:54 Uhr
Moin SWuser,

ich weiss es nicht, ob du den letzten Tipp von manuel-r als solchen wahrgenommen hast...
Um die schon älteren Datein zu behandeln schaust du dir einfach mal die Hilfe zu xcopy an und wozu der schalter /d dient.

Wenn du nun aber eventuell so fixiert auf die Erläuterung des Schalters /D wie /DeristBestimmtWichtig warst, dass du den Rest überlesen haben solltest:
Es gibt auch noch den nützlichen Schalter /L wie /LassMichErstmaGucken.
Damit kannst du dir für jede noch so abdrehte Xcopy-Parameter-Kombination erstmal am CMD-Prompt angucken, was denn OHNE diesen Schalter /L passieren würde.

Bitte schau in die XCopy-Hilfe, dann noch mal in meinen Kommentar, dann nochmal in die Hilfe und dann teste den Krams und poste danach die Fehlerursache.

Danke
Biber
Bitte warten ..
Mitglied: SWuser
02.10.2009 um 07:53 Uhr
Guten Morgen,

hatte es gestern nicht mehr geschafft zu schreiben,
aber: es hat alles so weit geklappt. Ist schon alles i.O.

Danke aber für die Hilfen!!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Automatisch Ordner und Unterordner anlegen mit historischem Datum (Schaltjahre berücksichtigen)
gelöst Frage von NimrodiBatch & Shell4 Kommentare

Hallo zusammen, ich möchte in einem Zielverzeichnis eine bestimmte Ordnerstruktur mit Unterordnern anlegen, die ein fortlaufendes historisches Datum tragen ...

Windows 10
Ordner im Startmenü anlegen
Frage von SarekHLWindows 101 Kommentar

Hallo zusammen, hat schon jemand herausgefunden, wie man im Startmenü von Windows 10 Ordner anlegt, um die Programme nach ...

Batch & Shell
Verknüpfungen auf einen Ordner mit Batch anlegen
gelöst Frage von ActaresBatch & Shell6 Kommentare

Neuer Tag - Neues Problem ;) Ausgangslage: Ich habe zwei Daten Server: Projektleitung und Finanzen / Vertrieb. Mit einer ...

Windows 8
Ordner werden nicht mit korrektem Datum angezeigt
Frage von geTr0ffEnWindows 87 Kommentare

Hallöchen, ich habe folgendes Problem. Nach einem Umzug wurden Dateien/Ordner von einem alten Laufwerk auf einen neuen PC kopiert. ...

Neue Wissensbeiträge
Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 6 StundenWindows 101 Kommentar

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 8 StundenSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 1 TagViren und Trojaner2 Kommentare

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 1 TagRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...

LAN, WAN, Wireless
Brainstorming, einfachste Option 1 getrenntes LAN (mit WAN zugang)
Frage von 132954LAN, WAN, Wireless13 Kommentare

Hi, folgendes: Wir bekommen eine Glasfaser Leitung, Und das sollte Optional so aussehen: Ein Modem/Router für das WAN, ein ...

Netzwerkgrundlagen
Hi eine blöde frage. xD
Frage von 132954Netzwerkgrundlagen12 Kommentare

Also: Habe 2012 r2 essentials neuinstalliert, allerdings installiert diese version ja gleich diesen gangen AD kram mit, den hab ...