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

Auf bestehende Dateien per xml Datei überprüfen.

Mitglied: Kalamari

Kalamari (Level 1) - Jetzt verbinden

06.11.2011, aktualisiert 13:12 Uhr, 2711 Aufrufe, 3 Kommentare

Hallo

Ich habe einige Probleme, um bestehende Dateien auf einem Pfad zu überprüfen und falls diese Datei bereits existiert, sollte diese nicht überschrieben werden.
Da immer eine meta.xml existiert, in der die Versionsnummer angegeben ist, dachte ich, ich verwende einfach diese Datei.
Versucht habe ich mein glück mit findstr in dieser Ausfürhung ...

if exist "Pfad\datei\meta.xml" findstr /c:"3.0 b1123" "Pfad\datei\meta.xml" >nul
if errorlevel 0 echo Die Anwendung ist bereits in der Version 3.0 vorhanden.
if errorlevel 1 rd "Pfad\datei\" /s /q & echo Eine frühere Version der Anwendung wurde gefunden und wird entfernt.

In der meta.xml steht der Eintrag so drin: <version>3.0 b1123</version>

Ja, leider klappt das nicht so wirklich.
Ist die richtige Datei Version vorhanden, kommt schön die Meldung "Die Anwendung ist bereits in der Version 3.0 vorhanden."
Ist die richtige Datei aber nicht vorhanden, oder es fehlt überhaupt der komplette Ordner, kommt auch diese Meldung...

Bitte um Hilfe, was mache ich falsch oder wie kann ich das Problem besser lösen?
Vielen dank
Mitglied: bastla
06.11.2011 um 13:45 Uhr
Hallo Kalamari!
if errorlevel 0
ist eine sinnlose Abfrage, da damit geprüft wird, ob der Errorlevel >= 0 ist (siehe "if /?") ...

... daher entweder
01.
if exist "Pfad\datei\meta.xml" (
02.
    findstr /c:"3.0 b1123" "Pfad\datei\meta.xml" >nul
03.
    if errorlevel 1 (
04.
        rd "Pfad\datei\" /s /q & echo Eine frühere Version der Anwendung wurde gefunden und wird entfernt.
05.
    ) else (
06.
        echo Die Anwendung ist bereits in der Version 3.0 vorhanden.
07.
    )
08.
)
oder gleich
01.
findstr /c:"3.0 b1123" "Pfad\datei\meta.xml" >nul 2>nul && (
02.
    echo Die Anwendung ist bereits in der Version 3.0 vorhanden.
03.
) || (
04.
    rd "Pfad\datei\" /s /q 2>nul && echo Eine frühere Version der Anwendung wurde gefunden und wird entfernt.
05.
)
Was sollte übrigens passieren, wenn "Pfad\datei\meta.xml" nicht gefunden wird?

Grüße
bastla
Bitte warten ..
Mitglied: Kalamari
06.11.2011 um 14:07 Uhr
Erstmal vielen Dank für Deine Hilfe!
Sollte die meta.xml gar nicht vorhanden sein, soll ein Ordner erstellt werden und die benötigten Dateien da rein kopiert werden.
Hmm, da stellt sich wieder die Frage, ob diese dann überhaupt vorhanden ist.

Also, ich hab da einen Downloader, der downloadet auf Wunsch die verschiedenen Applikationen, welche dann auf einen USB Stick kopiert werden sollten.

Datei wäre der Ordner vom Downloader und überprüft, ob überhaupts eine xml vorhanden ist.
Ist sie vorhanden, kann man weiter machen mit der Überprüfung
Da sollte das dann doch so gehen in etwa - jetzt grob geschrieben ...

if exist "Pfad\datei\meta.xml" if exist "USBStick\datei\meta.xml" (

Das sollte nur als Abgleich dienen, ob die gewünschte Datei vor dem Kopieren überhaupts in dem Ordner von dem Downloader vorhanden ist oder nicht?
Das heißt, das müsste noch in Deinem Code ein der ersten Zeile mit eingebaut werden oder?

Hmm, ich bin jetzt total verwirrt...
Kurz gesagt, es oll überprüft werden, ob die Datei in dem Ordner vom Downloader überhaupts zum Download ausgewählt wurde, wenn ja, ob die Datei auch auf dem Stick überhaupt in dem Ordner eine Datei namens meta.xml vorhanden ist.
Ist sie vorhanden, soll sie überprüft werden.
Ist diese Datei älter, soll sie entfernt werden und die neue drauf kopiert werden.
Ist das die identische Datei, soll gar nichts passieren...
Ist die Datei auf dem USB Stick nicht vorhanden, jedoch vom Downloader herunter geladen worde sein, soll sie kopiert werden.

Boah, jetzt bin ich überfordert und muss mir das nochmal durch denken.

Inzwischen vielen Dank für den Ansatz, Dein erster Code gefällt mir besser, da ich den besser verstehe
Bitte warten ..
Mitglied: bastla
06.11.2011 um 14:56 Uhr
Hallo Kalamari!
Dein erster Code gefällt mir besser, da ich den besser verstehe
"&&" entspricht einem "if %errorlevel%==0" und entsprechend "||" einem "if %errorlevel% neq 0" - damit sollte es klarer werden ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
XML
XML Datei Fehler?
Frage von Patrick-ITXML1 Kommentar

Hallo zusammen ich benutze Sysprep, um ein Image von einer Maschine zu machen und lade dieses dann auf einem ...

XML
XML Datei mit Powershell splitten
gelöst Frage von LianenSchwingerXML2 Kommentare

Hallo, ich habe eine riesige Exportdatei im XML-Format die ich nicht weiterverarbeiten kann. Der Aufbau ist wie folgt: Ich ...

VB for Applications
XML Datei auslesen mit Excel
Frage von kaiuwe28VB for Applications10 Kommentare

Hallo zusammen, ich mal wieder Leider komme ich nicht weiter. Ich möchte aus einem Ordner mit mehreren XML Dateien ...

XML
Vbs - simple XML Datei auslesen
gelöst Frage von DeeJayBeeXML4 Kommentare

Hallo zusammen, ich glaub, ich hab grad ne kleine Blockade oder denke viel zu kompliziert. Gegeben ist eine xml-Datei ...

Neue Wissensbeiträge
Windows Server

Zähe Update-Installation auf Windows Server 2016

Information von kgborn vor 2 TagenWindows Server4 Kommentare

Mir sind in der Vergangenheit immer wieder Beschwerden von Admins unter die Augen gekommen, die sich über die doch ...

Humor (lol)
Turnschuhe per Firmware lahmlegen
Information von Henere vor 2 TagenHumor (lol)8 Kommentare

Und was kommt demnächst ? Bekomme ich kein Klopapier mehr, weil der Spender einem DDOS unterliegt ? :-) Ich ...

Sicherheit

Sicherheitsrisiko in WinRAR und Co. durch Schwachstelle in UNACEV2.DLL

Information von kgborn vor 2 TagenSicherheit

In der seit 2005 nicht mehr aktualisierten Bibliothek UNACEV2.DLL gibt es eine Path-Traversal-Schwachstelle. Diese ermöglicht es, bei ACE-Archiven Dateien ...

Internet

CDU Propaganda: Urheberschutz im Internet - Ende des digitalen Wild-West

Information von Frank vor 3 TagenInternet6 Kommentare

Hallo Administratoren, aus einem Kommentar heraus habe ich folgenden Beiträge von Herr Sven Schulze und Axel Voss (beide CDU ...

Heiß diskutierte Inhalte
Windows Tools
Dateiname Automatisch auf PDF Klartext oder als Barcode abdrucken
Frage von spongebob24Windows Tools29 Kommentare

Hallo Zusammen, habe eine tolle Anforderung bekommen. Ich sollte auf mehrere PDF Dateien Automatisch einen Stempel anbringen lassen. Toll ...

Internet
SDSL oder ADSL - Preis-Leistungs-Verhältnis
Frage von ZeppelinInternet22 Kommentare

Wehrte Community, der Unterschied dieser beiden Techniken ist recht einfach erklärt. Das S, steht für Synchron (Gleich) und das ...

Microsoft Office
MicroSoft und seine Lizenzen
Frage von ZeppelinMicrosoft Office20 Kommentare

Wehrte Community, ich wende mich an die Community weil MicroSoft dazu keine Stellung nehmen möchte. Ich öffne mein Web-Browser ...

Hyper-V
Setup zu 2019 Hyper-V Coreserver gesucht
Frage von DerWoWussteHyper-V17 Kommentare

Moin. Ich habe unter die Möglichkeit, Hyper-V-Server 2012 R2 runterzuladen! Tolle Wurst, Microsoft! Nehme ich eine andere Quelle, nämlich ...