Hilfe bei Batch

Diskutiere Hilfe bei Batch im Programmierung Forum im Bereich Software Forum; Hallo liebe Community, habe eine Frage zu einem Batch. In Ordner1 liegen viele .csv Datein. Nun soll der Batch den Ordner2 auslesen. Befindet in...
D

daviid88

Threadstarter
Mitglied seit
24.06.2014
Beiträge
2
Hallo liebe Community,

habe eine Frage zu einem Batch. In Ordner1 liegen viele .csv Datein. Nun soll der Batch den Ordner2 auslesen. Befindet in Ordner2 keine .csv Datei ließt er Ordner1 aus und verschiebt+umbennt die Datei in Ordner2. Mein Problem ist, dass der Batch nicht nur eine Datei auswählt und so ein Fehler entsteht.

Mein Batch sieht folgendermaßen aus:

IF NOT EXIST d:\Ordner2\*.csv move /-Y d:\Ordner1\*.csv d:\Ordner2\fertig.csv


P.S. ich kann nicht besonders gut erklären ich hoffe ihr versteht mein Anliegen :D
 
B

boser

Mitglied seit
02.12.2010
Beiträge
151
Hallo,

mit deinem Befehl machst du nur ein globalen Vergleich aller Dateien, aber nicht der einzelnen Dateinamen.
Da für ist der Befehl "For each ..." .
 
D

daviid88

Threadstarter
Mitglied seit
24.06.2014
Beiträge
2
dumme Frage aber wo füge ich das "for each" ein
 
B

boser

Mitglied seit
02.12.2010
Beiträge
151
Dank google und 2 min. Aufwand.
----------------------------------------------------------------------------------------
Ein schnell zusammengebratener Batch könnte zu aussehen:
Quelltext | Drucken

::----snipp QuickNDirtyDirComp.bat [Param1: VerzeichnisA Param2: VerzeichnisB] @echo off for %%i in ("%1\*.*") do ( if not exist "%2\%%~nxi" ( echo [in Verz 2:] "%2\%%~nxi" nicht vorhanden. ) ELSE ( fc "%%i" "%2\%%~nxi">nul|| echo Dateien "%%~nxi" sind unterschiedlich. )) for %%i in ("%2\*.*") do if not exist "%1\%%~nxi" echo [in Verz 1:] "%1\%%~nxi" nicht vorhanden.
01. ::----snipp QuickNDirtyDirComp.bat [Param1: VerzeichnisA Param2: VerzeichnisB]
02. @echo off
03. for %%i in ("%1\*.*") do (
04. if not exist "%2\%%~nxi" (
05. echo [in Verz 2:] "%2\%%~nxi" nicht vorhanden.
06. ) ELSE (
07. fc "%%i" "%2\%%~nxi">nul|| echo Dateien "%%~nxi" sind unterschiedlich.
08. ))
09. for %%i in ("%2\*.*") do if not exist "%1\%%~nxi" echo [in Verz 1:] "%1\%%~nxi" nicht vorhanden.

Der Output von dem Schnipsel würde so aussehen:
Quelltext | Drucken

>quickndirtyDirComp d:\temp\templogs d:\temp\$home\logs Dateien "2006-09-28.log" sind unterschiedlich. Dateien "log.txt" sind unterschiedlich. [in Verz 2:] "d:\temp\$home\logs\temp.txt" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2005logs.txt" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-03.log" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-04.log" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-05.log" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-06.log" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-07.log" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-10.log" nicht vorhanden. [in Verz 1:] "d:\temp\templogs\2006-07-11.log" nicht vorhanden. ...
01. >quickndirtyDirComp d:\temp\templogs d:\temp\$home\logs
02. Dateien "2006-09-28.log" sind unterschiedlich.
03. Dateien "log.txt" sind unterschiedlich.
04. [in Verz 2:] "d:\temp\$home\logs\temp.txt" nicht vorhanden.
05. [in Verz 1:] "d:\temp\templogs\2005logs.txt" nicht vorhanden.
06. [in Verz 1:] "d:\temp\templogs\2006-07-03.log" nicht vorhanden.
07. [in Verz 1:] "d:\temp\templogs\2006-07-04.log" nicht vorhanden.
08. [in Verz 1:] "d:\temp\templogs\2006-07-05.log" nicht vorhanden.
09. [in Verz 1:] "d:\temp\templogs\2006-07-06.log" nicht vorhanden.
10. [in Verz 1:] "d:\temp\templogs\2006-07-07.log" nicht vorhanden.
11. [in Verz 1:] "d:\temp\templogs\2006-07-10.log" nicht vorhanden.
12. [in Verz 1:] "d:\temp\templogs\2006-07-11.log" nicht vorhanden.
13. ...
Quelle : http://www.administrator.de/forum/mit-batch-datei-verzeichnisse-vergleichen-14308.html
und auch das sieht interessant aus.
http://www.administrator.de/forum/wie-kann-ich-via-batch-zwei-dateien-vergleichen-und-zipen-143487.html
und dann noch : http://www.gidf.de :D
 
Thema:

Hilfe bei Batch

Hilfe bei Batch - Ähnliche Themen

  • Daten aus einer Textdatei löschen die älter als 24 Stunden sind

    Daten aus einer Textdatei löschen die älter als 24 Stunden sind: Hallo zusammen Ich möchte gerne das alle was über 24 Stunden in einer Textdatei ist gelöscht wird. Name der Textdatei: Auswertung.txt Ich erzeuge...
  • GELÖST Brauche kurze Hilfe bei einer Batch-Datei

    GELÖST Brauche kurze Hilfe bei einer Batch-Datei: Hallo, ich will mir mit Hilfe einer Batch-Datei den Inhalt von Verzeichnissen auf einer Externen Festplatte in eine Text-Datei schreiben lassen...
  • GELÖST Windows7 Batch-Script für automatische DynDNS Anmeldung - Hilfe benötigt

    GELÖST Windows7 Batch-Script für automatische DynDNS Anmeldung - Hilfe benötigt: Hi, seit neustem muss man sich bei dyndns.org alle 30Tage einmal manuell einloggen sonst wird der Hostname gelöscht. Auf dieser Seite fand ich...
  • neue Hilfe-Option fest legen | Batch

    neue Hilfe-Option fest legen | Batch: Ich habe eine Sammlung von Code-Gruppen angelegt, um mir das schreiben späterer Programme zu erleichtern. Diese Datei soll dann in den...
  • GELÖST Schulaufgabe Batch-Programmierung HILFE!!!

    GELÖST Schulaufgabe Batch-Programmierung HILFE!!!: Hallo! Ich habe in der Schule die folgende Aufgaben bekommen: Aufgabe 1: Erstellen Sie eine BATCH-Datei, die folgendes leistet: Es ist ein...
  • Ähnliche Themen

    Oben