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 Aktuelle Dateien via Batch

Mitglied: F1Marc

F1Marc (Level 1) - Jetzt verbinden

26.05.2008, aktualisiert 27.05.2008, 9974 Aufrufe, 4 Kommentare

Batch-Datei zum Überprüfen aktueller Datei im Verzeichnis (anhand von Datum im Dateiname)

Hi Leute,

folgendes Szenario:

Auf einem FTP-Server liegt jeweils eine sich täglich/stündlich aktualisierende Datei mit dem Syntax: name-prog-datum.csv (z.B. name-prog-20080525.csv) => Das Datum im Dateinamen hat immer das Datum vom Vortag.

Die Dateien können auf dem FTP-Server nicht gelöscht werden (vom Provider so gewünscht), weswegen sich diese fortlaufend auf dem FTP-Server ansammeln.

Anfangs war das Löschen auf dem FTP-Server noch möglich, doch nun weiss ich nicht, wie ich meiner Batch-Datei mitteilen soll, welche Datei die aktuelle ist?! Bei sich täglich ändernden Dateinamen anhand vom Datum und auch noch der verbleibenden Dateien auf dem Server keine Ahnung. Im Forum finde ich auch keine Lösung speziell für meine Anwendung.

Hier meine bisherige Batch- und FTP-Datei:

ftp.bat

ECHO Daten abrufen

D:
CD Daten

ftp -s:provider.ftp > ftp-log.txt

COPY name*prog*.csv D:\Daten\Backup
DEL name-fuer-programm.csv
RENAME name*prog*.csv name-fuer-programm.csv

provider.ftp

OPEN www.provider.de
Username
Passwort

LS

PROMPT
MGET name*prog*.csv
MDELETE name*prog*.csv

BYE
DISCONNECT

Gibt es eine Möglichkeit, nur die aktuelle Datei vom FTP-Server zu downloaden bzw. nach dem Download nur die aktuellste Datei in das Anwendungs-Verzeichnis D:\Daten zu kopieren und anschließend umzubenennen in name-fuer-programm.csv ???

Leider weiss ich nicht, wie ich das mit dem Datum im Dateinamen hinkriege und das auch noch jeweils vom Vortag. Oder bei gleich Dateinamen.

Habt Ihr Ideen?

Gruß
Marc
Mitglied: Larz
26.05.2008 um 13:20 Uhr
Hi Marc,

ich würde WasFile.exe benutzen um zu prüfen ob die Datei heute erstellt wurde.
Dann kannst Du nur die heutige Datei herunterladen.
Der Befehl hierzu lautet

01.
WasFile.exe datei.txt created sametime today 
02.
if errorlevel 0 goto TRUE  
03.
 
04.
:FALSE 
05.
Echo "Anderer Tag" 
06.
REM Tu etwas... 
07.
Pause 
08.
 
09.
:TRUE 
10.
ECHO "Gleicher Tag" 
11.
REM Tu etwas... 
12.
pause
Die Datei WasFile.exe findest Du problemlos im Netz. Das mit dem Datum im Dateinamen würde mich selbst aber auch noch interessieren...


Gruß
Lars
Bitte warten ..
Mitglied: F1Marc
26.05.2008 um 13:32 Uhr
Danke für die Info.

Nur leider nützt mir das nicht viel, da ja beim Download alle Dateien runtergeladen werden und diese dann alle das Erstellungsdatum heute haben. Dort wo ich diese Überprüfung bräuchte (während der FTP-Session) ist der Befehl ja nicht ausführbar bzw. nicht auf den FTP-Server anwendbar.

Außerdem wäre es sinnvoller die Dateien anhand ihres Datumstempels zu überprüfen, jedoch mit Tag minus 1 weil das aktuelle Datum immer das vom Vortag ist.

Mein zusäztliches Problem dabei ist, dass wenn diese Dateien auch noch mehrmals täglich runtergeladen werden sollen ich nicht weiss, wie die Batch-Datei in diesem Falle dann nur die aktuelle Datei ersetzt.

Der eigentliche Aufruf ist mir klar (via Taskplaner, ist schon eingerichtet).
Bitte warten ..
Mitglied: miniversum
26.05.2008 um 15:16 Uhr
Beim FTP Befehl gibt es den Befehl
01.
 FTP DIR
der dir die Auflistung der Verzeichnissnamen ausgibt. Diese Auflistung kanst du dann, nach Namen sortiert, durchgehen und die Neuste raussuchen. Sortierst du die Namen aufsteigend wird die neuste Datei ja die Letzte in der Liste sein. daher ist ein einfach es abrufen ungefär so möglich (ungetestet):
01.
 ftp dir ftp://Dateien.de > Dateiliste.txt 
02.
for /F "delims=" %%i in ('sort "Dateiliste.txt"') do set "aktfile=%%i" 
03.
echo Aktuellste Datei: %aktfile%
Bitte warten ..
Mitglied: F1Marc
27.05.2008 um 11:41 Uhr
Ich habe es probiert, jedoch legt mir DIR -> Dateiliste.txt während der FTP-Session eine leere Datei an. Nur wenn ich die komplette Ausgabe via Batch in eine Textdatei umleite, steht dort alles drin.

Leider sind es auch noch 2 unterschiedliche Dateien, die täglich einen neuen Namen und Datum haben.

Das Problem ist, sobald die Dateien erstmal mit FTP heruntergeladen sind, haben alle Dateien dasselbe Datum. Nur vom Dateinamen her kann man noch unterscheiden, weil dort ja das Vortagsdatum angehängt wird.

Somit fällt auch WasFile.exe was nach dem Erstellungsdatum sucht flach.

Ich habe es dann mal mit Delage32.exe probiert, wo alle Dateien ab einem bestimmten Tag (z.B. Vortag als Zahl 1) gelöscht werden. Das wäre auch das was ich brauche, um ein umständliches Batch mit Datumsüberprüfung zu umgehen.

Fakt ist aber, dass zwar auf dem FTP das Datum der Dateien unterschiedlich ist, sobald diese aber downgeloaded sind, alle dasselbe Datum haben.

Also bräuchte ich ein Script/Batch, was die Ausgabe-Datei (dateiliste.txt) nach dem Datum als String durchsucht, und wenn dementsprechend eine Datei das Vortagsdatum hat (das ist dann die aktuelle Datei) genau diese dann kopiert und umbenennt.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch Datei zum Kopieren aktueller Dateien erstellen

gelöst Frage von daniel011Batch & Shell5 Kommentare

Hallo, ich möchte eine Batch Datei erstellen, mit der ich Dateien von einem Ordner in einen anderen kopieren kann. ...

Batch & Shell

FTP Datei mit aktuellem Datum Übertragen - Batch Script

Frage von spyware96Batch & Shell10 Kommentare

Hi, ich soll ein Script (Batch-Datei) Schreiben welches folgendes macht: - Ein Backup auf einem Server zu einem .zip-Archiv ...

Batch & Shell

In Batch-Datei der aktuellen Ordernamen ohne Stammordner als Parameter verwenden

gelöst Frage von Winfried-HHBatch & Shell7 Kommentare

Hallo in die Runde, vor allem liebe Batch-Profis, wenn ich auf einem Server 2003 folge Ordnerstruktur habe: d:\Schuelerdaten +- ...

Batch & Shell

Per Batch Erstellungdatum einer Datei mit aktuellem Datum abgleichen

gelöst Frage von SchnubbelschubsBatch & Shell4 Kommentare

Hallo zusammen, Ich hab mir schon einen Wolf im Netz gesucht, aber irgendwie finde ich nicht das passende. Mein ...

Neue Wissensbeiträge
Backup

2016 - Restore mit WBAdmin - iSCSI Device als Sicherungsziel

Erfahrungsbericht von Henere vor 1 TagBackup1 Kommentar

Servus zusammen, was mich eben einige graue Haare gekostet hat Server 2016. Ich habe meinem Server eine weitere M2 ...

Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 4 TagenHumor (lol)9 Kommentare

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 4 TagenExchange Server9 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 5 TagenErkennung und -Abwehr3 Kommentare

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Heiß diskutierte Inhalte
E-Mail
Deutsche e-Mail Adresse auf iPhone in Katar. Nur Probleme
gelöst Frage von vanTastE-Mail32 Kommentare

Moin, ich habe hier in Deutschland auf einem Exchange 2013 eine e-Mail Adresse (name@domain.de) für einen Kollegen in Katar ...

Windows Server
Server verliert Dateien und Ordner
gelöst Frage von routeserverWindows Server15 Kommentare

Hallo Freunde, ich habe hier ein Problem, das mich an meine Grenzen treibt und ich würde gerne wissen, ob ...

Windows Tools
User Self Service und Client Management
Frage von OrkansonWindows Tools13 Kommentare

Hallo zusammen, ich hab ein paar verschiedene Fragen: 1. Was benutzt ihr um Software im Unternehmen zu verteilen? 2. ...

Windows Server
Domäne beitreten nicht möglich, unter VMWare windows Server 2016 Core
Frage von AmanuelWindows Server12 Kommentare

Ich habe auf meinem Mac unter VMWare Windows Server 2016 Core und Windows Server 2016 Desktopversion installiert. Beide Systeme ...