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 Vergleichen von Dateigrößen per Batch

Mitglied: BKAMk2

BKAMk2 (Level 1) - Jetzt verbinden

11.09.2007, aktualisiert 12.09.2007, 5278 Aufrufe, 9 Kommentare

Hab euch gestern entdeckt und hoffe ihr könnt mir helfen.

Also ich bin ein totaler Programier noob.
Hab kurz Java gemacht aber nicht wirklich verstanden und wollte einen neustart mit der Batch Programierung machen.

Also ich brauch eine Batch, die jeweils 2 Dateien mitteinander vergleicht. Entscheident dafür ist die Größe und der Name.
Insgesamt sind es 6 Dateien, also 3 mal 2 Dateien vergleichen.
Die Dateien sind in 2 verschiedenen Ordner einer ist Lokal auf jedem Rechner und einer (der aktuelle) ist auf unserem Server.
Die Dateien gibt es jeweils 2 mal...also 2 mal packages.xml, 2 mal hosts.xml und 2 mal profiles.xml.

Also Quasi so:

Updates Ordner auf Server

:::profiles.xml:::
:::packages.xml:::
:::hosts.xml:::

Lokaler Ordner auf Rechnern

::profiles.xml:::
:::packages.xml:::
:::hosts.xml:::

Die profiles.xml soll mit der anderen profiles.xml verglichen werden.
Die hosts.xml soll mit der hosts.xml verglichen werden.
Und die packages.xml soll mit der packages.xml verglichen werdeb.

Also entscheident sollten die Größe der dateien sein.
Diese unterscheiden sich aber nur minimal.
Also 15kb zu 15,2kb oder so...

Ich werde später noch mehr hilfe brauchen aber ich hab das der übersicht halber mal editiert.^^

Danke schonmal für eure Hilfe!

Gruss BKAMk2
Mitglied: miniversum
11.09.2007 um 18:28 Uhr
Mal ungetestet und nur für eine der Drei paare so (die andern gehen dan entsprechend):
@echo off
set localdir="C:"
set serverdir="X:"
FOR /F "delims= " %%l in ('dir /b "%localdir%\profiles.xml"') do set localsize=%~zl
FOR /F "delims= " %%s in ('dir /b "%serverdir%\profiles.xml"') do set serversize=%~zs
if %localsize% gtr %serversize% (
echo locale Datei ist groesser
) else (
echo Datei auf Server ist groesser
)

miniversum
Bitte warten ..
Mitglied: BKAMk2
12.09.2007 um 08:15 Uhr
Danke schonmal miniversum.

Leider treten bei mir 2 Fehler auf.

1. Die folgende Verwendung des Pfadparameters zur Ersetzung eines Batchparameters ist ungültig: %~zl

2. Geben Sie CALL /? oder FOR /? ein, um herauszufinden, welche Formate gültig sind.
Syntaxfehler.

Was soll ich machen? Wie kann ich die Fehler beseitigen? Und warum werden keine Netzlaufwerke erkannt?!?

Danke
Bitte warten ..
Mitglied: Biber
12.09.2007 um 08:34 Uhr
Moin BKAMk2,

ändere mal bitte die beiden SET-Zuweisungen, z.B.
....set localsize=%~zl
...so ab, dass vor der dynamischen Variablen ZWEI Prozentzeichen stehen. Also:
--->....set localsize=%%~zl

Dann passt es besser.

Grüße
Biber
Bitte warten ..
Mitglied: BKAMk2
12.09.2007 um 08:55 Uhr
Danke Biber.

Der Syntaxfehler ist draussen.
Bleiben nur noch die anderen =)

Also ich poste mal meine batch Datei und die Ausgabe:
Wo liegt jetzt das Problem??


[Edit Biber] Als < code > formatiert. [/Edit]
Bitte warten ..
Mitglied: Biber
12.09.2007 um 09:06 Uhr
Moin BKAMk2,

soweit ich es lesen kann..

--->Falsch : ...if %serversize% gtr %slocalsize%(

--->Richtiger: ...if %serversize% gtr %localsize% (

Bitte nutze beim Posten die <code>-Formatierung. Beispiel in Deinem letzten Kommentar.

Grüße
Biber

P.S. Anmerkung:
Statt: FOR /F "delims= " %%l in ('dir /b "%localdir%\profiles.xml"') do set localsize=%%~zl
Reicht: FOR %%l in ('"%localdir%\profiles.xml") do set localsize=%%~zl
Bitte warten ..
Mitglied: BKAMk2
12.09.2007 um 09:27 Uhr
Mach ich das nächste mal.

Wusste nicht wie^^

Hab deine Vorschläge befolgt hab aber immer noch den Fehler:

Bitte warten ..
Mitglied: Biber
12.09.2007 um 10:30 Uhr
Moin BKAMk2,

bitte poste doch noch mal die komplette Batchdatei in einem
... ein paar Leerzeilen
-oder-
eine der Dateien wird nicht gefunden und die %xxxsize%-Variable ist dadurch undefiniert.

In letzterem Fall würde ein Syntaxfehler auftreten, den Du vermeiden kannst durch:
---> if defined %localsize% if defined %serversize% if %localsize% gtr %serversize% ( ...

Sieht hässlich aus, erspart aber noch hässlichere Fehlermeldungen.

Grüße
Biber
Bitte warten ..
Mitglied: BKAMk2
12.09.2007 um 10:43 Uhr
habe alles nochmal auf leerzeilen untersucht.
Sind keine da.

Wenn ich den Befehl:

eingebe gibt er mir beide Echo's nacheinander aus.

Hier nochmal die Batch:


[Edit BKAMk2] Funktioniert jetzt. Hab die hochkommatra in den Zeilen:

rausgenommen.

Bin gerade dabei mit Javascript was zu schreiben damit dem User nachher eine Bildschirm Meldung ausgegeben werden kann.

Vielen Dank für eure Hilfe.

BKAMk2
Bitte warten ..
Mitglied: Biber
12.09.2007 um 17:52 Uhr
Moin BKAMk2,

sorry, tut mir Leid mit meinem mitge-Copy&Paste-ten einfachen Hochkomma.

Freut mich aber, dass Du es zum Fliegen gebracht hast.

Ich schließe mal diesen Beitrag, denn das eigentliche Anliegen scheint jetzt gelöst zu zu sein.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch vergleich Dateien if else
Frage von zeroblue2005Batch & Shell2 Kommentare

Hallo Zusammen, suche eine einfache Lösung um zwei Dateien miteinander zu vergleichen. Hintergrund ist der, dass ich eine Update ...

Windows Tools
Zeiterfassungssysteme im Vergleich
Erfahrungsbericht von Michl16Windows Tools8 Kommentare

Hallo zusammen, gerade durch die neuen Regelungen der EU schießen Zeiterfassungssysteme momentan wie Pilze aus dem Boden. Hier das ...

Microsoft Office
Excel Tabellen Vergleich
gelöst Frage von Dr.CornwallisMicrosoft Office1 Kommentar

Liebe Gemeinde, ich habe einen VBA Code, dieser vergleicht eine Spalte mit anderen Spalten aus anderen Blättern. Verglichen wird ...

Visual Studio
String-Vergleich optimieren
gelöst Frage von MarcoBornVisual Studio4 Kommentare

Hallo Forum, ich habe folgenden Code-Schnipsel (vereinfacht): Ich vergleiche für jeden Absatz eines Word-Textes Inhalte mit 9 Strings, die ...

Neue Wissensbeiträge
Microsoft Office
O365 Makro Schutz nicht immer per GPO möglich
Information von sabines vor 6 StundenMicrosoft Office

Der zum Schutz gegen Verschlüsselungstrojaner wichtige Makroschutz lässt sich wohl in Office 365 nicht immer per GPO einstellen. Für ...

Netzwerkmanagement
How To Mikrotik Netinstall
Erfahrungsbericht von areanod vor 2 TagenNetzwerkmanagement

Jedes Mal wenn ich Netinstall längere Zeit nicht benutzt habe stolpere ich über die „Besonderheiten“ dieser Software. Das ist ...

Microsoft
Microsoft: LDAPS per Update als Default
Information von em-pie vor 2 TagenMicrosoft2 Kommentare

Hallo, Microsoft wird mit einem der zukünftigen Updates LDAP auf LDAPS per Default umstellen. Admins von angebundenen Systemen die ...

Humor (lol)

Funny: Warum es immer schwieriger wird, die richtigen Produkte online zu finden

Information von Dilbert-MD vor 4 TagenHumor (lol)18 Kommentare

Wir befinden uns in der Rubrik "Off Topic - Humor" und in 15 Minuten ist Freitag. und ja, es ...

Heiß diskutierte Inhalte
Router & Routing
Suche Router der von einem Ethernet ein WLAN erzeugt
gelöst Frage von cdkurtRouter & Routing29 Kommentare

Hallo, ich bin auf der Suche nach einem Wlan Router/ Access Point der sich in einem Heim / Hotel ...

Windows Server
Windows Server 2019 RDP auf anderen Port umlegen scheint zumindest in der Firewall nicht zu funktionieren
gelöst Frage von kfj-deWindows Server18 Kommentare

Hallo zusammen, habe gedacht, ich mache den Remote Desktop Zugang etwas sicherer und lege den Port auf einen der ...

Netzwerke
FortiGate Firewall Konfiguration
gelöst Frage von ObaidaNetzwerke14 Kommentare

Guten Morgen, ich möchte fragen, wenn man eine Firewall zwischen den Server, der für eine Umgebung test gemacht wurde ...

Windows 10
Windows 10 das klassische Startmenü
Frage von Daoudi1973Windows 1012 Kommentare

Hallo zusammen, wie kann ich bitte ohne zusätsliche Tolls wie "das kostenlose Programm Open Shell" im Windows 10 das ...