Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Batch zum vergleichen und kopieren von Dateien

Frage Entwicklung Batch & Shell

Mitglied: jhe1960

jhe1960 (Level 1) - Jetzt verbinden

06.12.2008, aktualisiert 10.12.2008, 4562 Aufrufe, 6 Kommentare

Hallo Forum,

ich bin auf der Suche nach einer Möglichkeit, Dateien zu vergleichen und fehlende zu kopieren.

In Laufwerk c:\test kommen Dateien rein, in verschiedenen Unterverzeichnissen (es kommen auch neue UV hinzu).

Es kommen in diese Unterverzeichnisse Texdateien.

Diese Textdateien sollen nun auf D:\Archiv archiviert werden, allerdings ohne die Unterverzeichnisstruktur von c:\test, also alle txt Dateien in D:\Archiv.

Es soll überprüft werden, ob die Datei blabla123.txt, in einem beliebigen Unterverzeichnis von c:\test, bereits in d:\Archiv vorhanden ist und falls nicht, dorthin kopiert werden.

Da ich nicht wirklich einen Plan von Batchprogrammierung habe, wende ich mich hoffnungsvoll an euch...

Die Möglichkeit von z.B. SyncToy von MS habe ich auch schon in Betracht gezogen, leider legt das Tool auch die kompletten Pfade mit an...

Gruß

jhe1960
Mitglied: Ren
06.12.2008 um 14:19 Uhr
hm, was meinst du mit Dateien vergleichen. Meinst du, wie du es beschrieben hast, nur auf die Existenz der Dateien zu prüfen, oder soll die Batch auch für den Fall, dass einen Datei existiert, auf Identität prüfen?
Bitte warten ..
Mitglied: Ren
06.12.2008 um 14:33 Uhr
Wenn es wirklich nur um die Existenz eine TXT.Datei geht, dann würde meines Erachtens, und ungetestet, folgender Befehl reichen:
01.
for /F "tokens=*" %i in ('dir c:\test\*.txt /s /b') do if not exist "d:\Archiv\%~ni%~xi" copy "%~i" "d:\Archiv\%~ni%~xi"
der For-Befehl erledigt dabei folgendes: für jede Zeile des Befehls "dir c:\test\*.txt /s /b" (gib das ruhig mal auf der Konsole ein) macht er:
er prüft, ob in d:\Archiv eine Textdatei mit dem gleichen Namen und der gleichen Erweiterung existiert, und wenn das nicht der Fall ist, dann kopiert er die Datei, die er mit dem Dir-Befehl gefunden hat nach d:\Archiv, und gibt ihr dort den gleichen Namen wie im Original, und die gleiche Erweiterung.
Wenn du Diese Zeile in eine Batch-Datei einbinden willst, dann müsstest du alle vorkommen von %i durch %%i ersetzte, auch %~ni durch %%~nu usw. Für weitere Erläuterung meiner Befehle kannst du dir auf der Kommandozeile auch mal mit dir /? und for /? und if /? angucken, was die sonst so noch können.
lg, schönes WE, Ren
Bitte warten ..
Mitglied: jhe1960
06.12.2008 um 16:14 Uhr
Hallo,

vielen Dank für deine schnelle Antwort. Ich hab das jetzt ausprobiert, leider passiert garnix...

Ich verstehe auch nicht, was du mit "Wenn du Diese Zeile in eine Batch-Datei einbinden willst, dann müsstest du alle vorkommen von %i durch %%i ersetzte, auch %~ni durch %%~nu usw" <<< speziell mit dem "usw" meinst?

Grüße

jhe1960

//Edit:

ich hatte 1 % übersehen, Danke, es geht!
Bitte warten ..
Mitglied: Ren
06.12.2008 um 16:54 Uhr
noch mal als Batch:
01.
@for /F "tokens=*" %%i in ('dir c:\test\*.txt /s /b') do if not exist "d:\Archiv\%%~ni%%~xi" copy "%%~i" "d:\Archiv\%%~ni%%~xi"
Bitte warten ..
Mitglied: jhe1960
06.12.2008 um 19:33 Uhr
Danke Ren, es hat schon funktioniert...

Gruß & schönes WE noch!

jhe1960
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Datei zum Kopieren aktueller Dateien erstellen (5)

Frage von daniel011 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Datei Kopieren (17)

Frage von Frager zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch zum Vergleichen der Firefox-Version (2)

Frage von patrick93 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: alle Ordner mit einem bestimmten Namen kopieren (4)

Frage von Remsboys zum Thema Batch & Shell ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Seekrank bei Windows 10 (18)

Frage von zauberer123 zum Thema Windows 10 ...

Windows 10
Windows 10 Fall Creators Update Fehler (14)

Frage von ZeroCool23 zum Thema Windows 10 ...

Windows Server
Frage zu Server Rack (9)

Frage von rainergugus zum Thema Windows Server ...