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

Dateiverzeichnisse via Batch vergleichen und in Textdatei schreiben

Mitglied: Franzmann

Franzmann (Level 1) - Jetzt verbinden

09.02.2010 um 11:21 Uhr, 5920 Aufrufe, 12 Kommentare

Hallo zusammen,
lang ists her aber ich hoffe mir kann trotzdem noch geholfen werden ;)

Hab folgendes vor.
Ich will 2 Dateiverzeichnisse vergleichen (also sämtliche darin befindlichen Dateien)
Die Dateien die gleich sind, die unterschiedlich sind oder gar in einem Verzeichnis fehlen, sollen jeweils in eine Textdatei geschrieben werden.

Mein Ansatz siehts so aus:
@ECHO OFF

SET LOCALFOLDER=C:\temp
SET OTHERFOLDER=C:\temp1

:LOCALKEYTEMP

SET FILE=DONE



FOR /F "TOKENS=*" %%G IN ('DIR/B ^"%LOCALFOLDER%\*.*^"') DO SET FILE=%%G
ECHO %FILE%

IF %FILE%==DONE GOTO END
ECHO COMP "%LOCALFOLDER%\%FILE%" "%OTHERFOLDER%\%FILE%" | FIND "FILES COMPARE OK" > NUL


:: echo (0) Fehlerfreier Lauf, Dateien sind identisch
:: echo (1) Unterschiedliche Dateien gefunden
:: echo (2) Dateifehler, Datei nicht vorhanden
IF ERRORLEVEL 0 GOTO :NOFAILURE
IF ERRORLEVEL 1 GOTO :DIFFERENTFILES
IF ERRORLEVEL 2 GOTO :NOTAVAILABLE


:NOFAILURE
ECHO N|COMP "%LOCALFOLDER%\%FILE%" "%OTHERFOLDER%\%FILE%" >> C:\overview\nofailure.txt
GOTO LOCALKEYTEMP


:DIFFERENTFILES
ECHO N|COMP "%LOCALFOLDER%\%FILE%" "%OTHERFOLDER%\%FILE%" >> C:\overview\differentfiles.txt
GOTO LOCALKEYTEMP

:NOTAVAILABLE
ECHO N|COMP "%LOCALFOLDER%\%FILE%" "%OTHERFOLDER%\%FILE%" >> C:\overview\notavailable.txt
GOTO LOCALKEYTEMP

:END
EXIT

Jetzt hab ich das Problem das er aber nur in einem Ordner sucht und das in einer Endlosschleife...
Das Ergebnis schreibt er in die nofailure.txt !

Hoffe jemand kann mir helfen.. thx so far
Mitglied: iVirusYx
09.02.2010 um 12:55 Uhr
Ich bin jetzt kein Programmierer, habe grade erst angefangen damit, aber legst du da die FOR-Schleife nicht auf den einen Ordner?
Und wiederholst hiermit immer wieder den Durchgang durch den einen Ordner.

Gibt es beim "batchen" keine Schleifen wie "DO UNTIL" oder so?

Sorry Bin wirklich ein Programmieranfänger
Bitte warten ..
Mitglied: Franzmann
09.02.2010 um 13:15 Uhr
Zitat von iVirusYx:
Ich bin jetzt kein Programmierer, habe grade erst angefangen damit, aber legst du da die FOR-Schleife nicht auf den einen Ordner?
Und wiederholst hiermit immer wieder den Durchgang durch den einen Ordner.
Ich auch nicht ;) ! Es gibt nur die eine Schleife weil die sich wiederholen soll und anhand des Errorlevels ausgewertet, sprich in die jeweilige Datei geschrieben, werden soll.
Gibt es beim "batchen" keine Schleifen wie "DO UNTIL" oder so?
Doch gibt es...

Sorry Bin wirklich ein Programmieranfänger
Viel mehr bin ich auch nicht. Aber ist doch kein Problem, bin für alle Anregungen dankbar ;)
Bitte warten ..
Mitglied: 60730
09.02.2010 um 14:00 Uhr
Servus,

ich würde das ganze (je nach den Dateien) anders anfangen.

Pro datei ein Comp / fc kann ganz schön lange und graue Bärte verursachen.

Ein
01.
xcopy quelle\*.* ziel\ /d /L |find "\" >dateiliste.txt
liefert da schon etwas mehr in kürzerer Zeit ab.

Von daher eher in den Ansatz mehr Zeit investieren - denn der obere steckt foller vehler ;-(

Gruß
Bitte warten ..
Mitglied: Franzmann
09.02.2010 um 14:13 Uhr
Zitat von 60730:
Servus,

ich würde das ganze (je nach den Dateien) anders anfangen.

Pro datei ein Comp / fc kann ganz schön lange und graue Bärte verursachen.

Ein
01.
> xcopy quelle\*.* ziel\ /d /L |find "\" >dateiliste.txt
02.
> 
liefert da schon etwas mehr in kürzerer Zeit ab.
Ok sehe ich u.U. ein.
Wenn ich 2 Verzeichnisse mit Musterdateien anlege wird zwar die "dateiliste.txt" angelegt aber sie bleibt leer.
Einen Fehler bekomme ich am CMD Prompt auch nicht.

Von daher eher in den Ansatz mehr Zeit investieren - denn der obere steckt foller vehler ;-(
Inwiefern ?

Gruß
Bitte warten ..
Mitglied: 60730
09.02.2010 um 14:21 Uhr
Zitat von Franzmann:
> Zitat von 60730:
> ----
> Servus,
>
> ich würde das ganze (je nach den Dateien) anders anfangen.
>
> Pro datei ein Comp / fc kann ganz schön lange und graue Bärte verursachen.
>
> Ein
>
01.
> > xcopy quelle\*.* ziel\ /d /L |find "\" >dateiliste.txt
02.
> > 
> liefert da schon etwas mehr in kürzerer Zeit ab.
Ok sehe ich u.U. ein.
Wenn ich 2 Verzeichnisse mit Musterdateien anlege wird zwar die "dateiliste.txt" angelegt aber sie bleibt leer.

.. und was passiert, wenn alles nach dem-inclusive dem > weggelassen wird?
... bzw: im 2. Stepp das |find "\", dass dazu da ist die xxDatei(en) kopiert Zeile auszublenden?
Einen Fehler bekomme ich am CMD Prompt auch nicht.
>
> Von daher eher in den Ansatz mehr Zeit investieren - denn der obere steckt foller vehler ;-(
Inwiefern ?

naja...
SET FILE=DONE
FOR /F "TOKENS=*" %%G IN ('DIR/B ^"%LOCALFOLDER%\*.*^"') DO SET FILE=%%G
IF %FILE%==DONE GOTO END

da mag ich nicht wirklich drüber weiterschnacken
Gruß
zurück
Bitte warten ..
Mitglied: Franzmann
09.02.2010 um 14:33 Uhr
xcopy quelle\*.* ziel\ /d /L |find "\" >dateiliste.txt
dateiliste.txt wird angelegt ist aber leer !
.. und was passiert, wenn alles nach dem-inclusive dem > weggelassen wird?
Nichts ! Kein Fehler aber auch kein Ergebnis..
... bzw: im 2. Stepp das |find "\", dass dazu da ist die xxDatei(en) kopiert Zeile auszublenden?
0 Datei(en) kopiert
naja...
> SET FILE=DONE
> FOR /F "TOKENS=*" %%G IN ('DIR/B ^"%LOCALFOLDER%\*.*^"') DO SET FILE=%%G
> IF %FILE%==DONE GOTO END
hmm
da mag ich nicht wirklich drüber weiterschnacken
na denn
Bitte warten ..
Mitglied: 60730
09.02.2010 um 14:53 Uhr
??
Nichts ! Kein Fehler aber auch kein Ergebnis..
0 Datei(en) kopiert
... jetzt ist die Frage - worin Unterscheiden sich denn Quell und Zieldateien im Test und ist der Test auch das, was im "produktiveinsatz" erwartet wird?

hmm
Hör mir auf mit hmm

du kannst doch niicht zuerst etwas statisch setzen, danach in einer schleife wieder neu setzen und nachdem die schleife abgearbeitet wurde erwarten, das die erstbesetzung wieder gilt?

Die Schleife arbeitet doch solange, bis nix mehr in der Schleife drin ist......
Bitte warten ..
Mitglied: Franzmann
09.02.2010 um 15:09 Uhr
0 Datei(en) kopiert
... jetzt ist die Frage - worin Unterscheiden sich denn Quell und Zieldateien im Test und ist der Test > auch das, was im "produktiveinsatz" erwartet wird?
In der Anzahl der Dateien und bei diversen Dateien auch an der Größe.
du kannst doch niicht zuerst etwas statisch setzen, danach in einer schleife wieder neu setzen und > nachdem die schleife abgearbeitet wurde erwarten, das die erstbesetzung wieder gilt?
Die Schleife arbeitet doch solange, bis nix mehr in der Schleife drin ist......
Bin leider kein Programmierer und habs mir zusammengetragen !
Bitte warten ..
Mitglied: 60730
09.02.2010 um 16:49 Uhr
Zitat von iVirusYx:
Sorry Bin wirklich ein Programmieranfänger
das soll man ja bekanntlich ändern können...

Nur was willst du denn als Anfang "programmieren"?

Soll das ein Synctool werden? ->in beide Richtungen?
In der Anzahl der Dateien und bei diversen Dateien auch an der Größe.
ja nee iss klar - geht ein bisschen ungenauer?

Gruß
Bitte warten ..
Mitglied: Franzmann
09.02.2010 um 17:00 Uhr
Zitat von 60730:
> Zitat von iVirusYx:
> ----
> Sorry Bin wirklich ein Programmieranfänger
das soll man ja bekanntlich ändern können...
Haste mal gesehen von wem das ist ?

Nur was willst du denn als Anfang "programmieren"?
Ich will einfachnur 2Verzeichnisse auf unterschiedliche Datenbestände hin prüfen.

Soll das ein Synctool werden? ->in beide Richtungen?
Nee...
> In der Anzahl der Dateien und bei diversen Dateien auch an der Größe.
ja nee iss klar - geht ein bisschen ungenauer?
Wo ist das Problem ?
Bringts dir was wenn ich 6 gleiche (Name und Größe) txt Dateien habe, 4 unterschiedliche (Name gleich, Größe unterscheidlich), und meinetwegen 1 Datei ist nur in einem Verzeichnis vorhanden ?
Wenn ja, dann tuts mir Leid...
Gruß
Bitte warten ..
Mitglied: 60730
09.02.2010 um 17:06 Uhr
Wenn ja, dann tuts mir Leid...

find ich nun aber wirklich tragisch und ich tu mir dann auch selber leid....

Um dir bei deinem Problem helfen zu können, muß man wissen - wo der Schuh drückt.
Aber nein - mir bringts nix...
Dateiverzeichnisse via Batch vergleichen und in Textdatei schreiben
War deine Überschrift und einen Ansatz dazu hab ich dir geliefert, aber ich glaub ich setze mich mal lieber wieder ab...
Bitte warten ..
Mitglied: Franzmann
10.02.2010 um 08:17 Uhr
Ich lass das jetzt einfach mal so stehen.
Es ging mir um Hilfe und nicht um Belehrungen irgendwelcher Art.
Ansätze ? Sachen schlecht reden kann jeder, aber auch konstruktiv sagen was Mist ist,
wie mans besser machen kann, das kannste ja anscheinend auch nicht und hätte mir mehr gebracht...
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 ...

Batch & Shell
Batch Textdatei Spaltenweise auslesen
Frage von PinkFLuffyUnicornBatch & Shell7 Kommentare

hi, ist es irgendwie möglich anstatt eine Textdatei via Batch Spaltenweise auszulesen und nicht zeilenweise wie das normal ganz ...

Batch & Shell
Textdatei verschlüsseln per Batch
gelöst Frage von Nick2212Batch & Shell22 Kommentare

Hi Leute ich wollte einmal fragen ob es eine Möglichkeit gibt, den Inhalt einer Textdatei per Batch zu verschlüsseln ...

Batch & Shell
Batch: Textdatei Zeilenweise auslesen
gelöst Frage von CreatorXBatch & Shell2 Kommentare

Hallo, ich weiß, zu dem Thema gibt es schon unzählige Threads. Ich hab auch einiges dazu gefunden und trotzdem ...

Neue Wissensbeiträge
Datenschutz

SiSyPHuS Win10: Analyse der Telemetriekomponenten in Windows 10

Tipp von freesolo vor 1 TagDatenschutz1 Kommentar

Alle die sich detailliert für die Datensammlung interessieren die unter Windows 10 stattfindet, sollten sich folgende Analyse des BSI ...

Sicherheit
Adminrechte dank Intel-Grafikkarte
Information von DerWoWusste vor 2 TagenSicherheit1 Kommentar

ist das Advisory, welches beschreibt, welche Intel HD Graphics Modelle Sicherheitslücken haben, mit denen sich schwache Nutzer zu Admins ...

Internet

EU Urheberrechtsreform: Eingriff in die Internetkultur

Information von Frank vor 2 TagenInternet1 Kommentar

Liebe Besucherin, lieber Besucher, warum erscheint das obere Banner in allen Beiträgen? Aus Protest gegen Teile der geplanten EU-Urheberrechtsreform ...

Windows Server
Windows Backup - FilterManager Event 3
Tipp von NixVerstehen vor 3 TagenWindows Server

Hallo zusammen, ich bin kein gelernter ITler und auch beruflich nicht in dem Feld tätig. Wir setzen in unserem ...

Heiß diskutierte Inhalte
Router & Routing
Lancom-VPN-Client
Frage von FM28880Router & Routing15 Kommentare

Hallo zusammen, ich habe heute zwei Rechner mit einem Lancom VPN-Client eingerichtet. Die VPN-Verbindung wird aufgebaut und steht. Jedoch ...

Microsoft Office
Sharepoint 2016 mag keine Umlaute in .docx-Titeln
gelöst Frage von DerWoWussteMicrosoft Office14 Kommentare

Moin Kollegen. Nutzt hier jemand Sharepoint? Könnt Ihr, unabhängig von der Sharepointversion, bitte einen Test machen? Ladet ein .docx ...

Hyper-V
Hyper-V Manager startet, jedoch keine VM
Frage von NaleorHyper-V11 Kommentare

Hallo zusammen, auf meinem Windows 10 (Build 1703) Notebook von der Arbeit scheint Hyper-V plötzliche nicht mehr zu funktionieren. ...

Virtualisierung
Physikalischen Linux-Rechner (Debian) in VM umziehen
Frage von fbronkoVirtualisierung10 Kommentare

Moin, ich möchte zu Testzwecken einen physikalisch vorhandenen Linux-Rechner auf Debian-Basis in eine VM umziehen. Ich habe mittlerweile schon ...