Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Dateien verschieben bzw. moven nach Kriterium Dateigröße

Frage Entwicklung Batch & Shell

Mitglied: africar

africar (Level 1) - Jetzt verbinden

10.01.2008, aktualisiert 11.01.2008, 5011 Aufrufe, 4 Kommentare

Synchronisierung von zwei Windows-Verzeichnissen nach Kriterium Dateigröße.
Nur die größere Datei bleibt erhalten.

Hallo,
auch nach längerer Suche ist es mir nicht gelungen, eine Batch zu finden, welche
Dateien zwischen Verzeichnissen verschiebt
und dabei die kleinere der Dateien überschreibt. Auch Tools wie robocopy geben das nach meiner
Recherche nicht her.
Man kann das Problem wohl auch als Syncronisierung nach maximalem Volumen umschreiben.
Ich wäre dankbar, wenn mir jemand eine Batch oder auch cygwin-Lösung (lauffähig unter WinXP) bereitstellen kann.

Hinzu kommt das Problem langer Dateinamen und Sonderzeichen, welches wohl auch eine Rolle spielen könnte.
Danke
Gruß
Hermann
Mitglied: Biber
10.01.2008 um 09:49 Uhr
Moin africar,

willkommen im Forum.

Diese Anforderung sollte mit einer Zeile vom CMD-Prompt zu lösen sein.
Im Prinzip brauchst Du nur zwei FOR-Anweisungen nacheinander laufen lassen - eine über die Dateien des Quellverzeichnisses und eine über die des Ziels.

Demo am CMD-Prompt:
01.
>for %i in (d:\temp\mod*.*) do @for %j in ("d:\temp\eins\%~nxi?") do @echo [%~ni][%~zi][%~zj] 
02.
[modules][4560][4560] 
03.
[Modules_1][116][116] 
04.
[Modules_2][116][116] 
05.
[Modules_3][116][116]
Dieses Beispiel würde über Dateien "mod*.*" der Quelle "d:\temp\" laufen und die gefundenen Dateien mit gleichnamigen im Ziel "d:\temp\eins\" vergleichen.
Angezeigt werden dann Dateiname, Größe in Quelle, Größe der Datei im Zielverzeichnis.

Wenn Du die Zeile 2x gelesen und 1x verstanden hast, dann wäre eine allgemeinere Fassung in einem Batch in etwa:
01.
::------ snipp CopyIfGTR.cmd 
02.
@echo off & setlocal 
03.
Set "Q=D:\temp" 
04.
Set "Z=D:\temp\eins" 
05.
FOR %%i in ("%q%\*.*") do for %%j in ("%Z%\%%~nxi?") do ( 
06.
     IF %%~zi GTR %%~zj Copy /y "%%i" "%%j" 
07.
)
P.S. Wo hast Du denn gesucht...... wer außer unserem Forum sollte denn Antworten haben? *gg

Grüße
Biber
Bitte warten ..
Mitglied: africar
10.01.2008 um 12:46 Uhr
Hallo Biber,
vielen dank, das ging ja schnell.
Ich denke ich hab's verstanden, hatte (auch hier im Forum) bei der Suche wohl
zu sehr auf move und verschieben fokussiert.
Gruß
Africar
Bitte warten ..
Mitglied: Biber
10.01.2008 um 18:06 Uhr
Moin Africar,

okay, das Detail mit dem "Verschieben" wiederum habe ich überlesen... sorry.

In diesem Fall die Zeile...
IF %%~zi GTR %%~zj Copy /y "%%i" "%%j"
...ersetzen durch...
IF %%~zi GTR %%~zj Move "%%i" "%%j"

Aber da bist Du bestimmt schon selbst darauf gekommen...
Wenn Du noch einen "Erledigt"-Haken setzt, schließe den Beitrag dann gelegentlich.

Grüße
Biber
Bitte warten ..
Mitglied: africar
11.01.2008 um 06:19 Uhr
Moin Biber,
nochmals Thanks for caretaking.
Gruß
Africar
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...