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

Hilfe bei Batchdatei um Ordnerstruktur abzufragen und Dateien zu verschieben.

Frage Entwicklung Batch & Shell

Mitglied: mayofant

mayofant (Level 1) - Jetzt verbinden

09.04.2014, aktualisiert 18:42 Uhr, 1036 Aufrufe, 6 Kommentare, 3 Danke

Hallo Gemeinde,

ich bräuchte mal Eure Profihilfe

Ich benötige eine Batchdatei, welche die Ordnerstruktur einer Festplatte nach bestimmten Dateien durchsucht und diese dann in einen neuen Unterordner verschiebt.

Das finden und kopieren der Dateien und das Anlegen des Unterordners ist grundsätzlich kein Problem, wenn ich denn in einem Ordner suche. Aber das Durchsuchen der gesamten Ordnerstruktur nach den Dateien lässt mich verzweifeln

Kann mir da bitte jemand helfen?

PS: Bitte Eure (hoffentlich zahlreichen) Antworten für Dummies formulieren

VIELEN DANK VORAB!
Mitglied: bastla
LÖSUNG 09.04.2014, aktualisiert um 18:42 Uhr
Hallo mayofant!

Passend zur Deiner eher allgemein formulierten Fragestellung ein Beispiel: Alle .txt-Dateien unterhalb von "D:\Testordner" erhältst Du mit
for /f "delims=" %%i in ('dir /s/b/a-d "D:\Testordner\*.txt"') do echo "%%i"
Grüße
bastla
Bitte warten ..
Mitglied: mayofant
09.04.2014 um 17:08 Uhr
Zitat von bastla:

Hallo mayofant!

Passend zur Deiner eher allgemein formulierten Fragestellung ein Beispiel: Alle .txt-Dateien unterhalb von
"D:\Testordner" erhältst Du mit
for /f "delims=" %%i in ('dir /s/b/a-d "D:\Testordner\*.txt"') do 
> echo "%%i" 
> 
Grüße
bastla

Danke Bastla!

Das hilft mir weiter!
Wie ich das jetzt aber verstehe bin ich mit Deiner Lösung nicht "in" die Ordner gewechselt (CD), sondern habe nur deren Inhalt durchsucht, richtig?
Wie würde ich dann im nächsten Schritt im Ordner, welcher die gesuchte Datei enthält, einen Unterordner erzeugen (z.B. md BEISPIEL) und die gefundene Datei dorthin verschieben? (MOVE)

Meine bisherigen Lösungsansätze funktionierten über "Ordnerwechsel" (CD), so dass ein Anlegen und Verschieben kein Problem war.

Danke vorab
Bitte warten ..
Mitglied: bastla
LÖSUNG 09.04.2014, aktualisiert um 18:42 Uhr
Hallo mayofant!

Den Ordner, in dem sich die gefundene Datei befindet, erhältst du mit "%%~dpi" (siehe "for /?" ziemlich gegen Ende) - demzufolge etwa so:
for /f "delims=" %%i in ('dir /s/b/a-d "D:\Testordner\*.txt"') do echo md "%%~dpiBEISPIEL" && echo move "%%i" "%%~dpiBEISPIEL\"
Die beiden "echo" dienen dem gefahrlosen Testen, da so die Befehle nur angezeigt, aber nicht ausgeführt werden - lässt Du diese "echo" weg, werden tatsächlich Ordner erstellt / Dateien verschoben ...

Grüße
bastla
Bitte warten ..
Mitglied: mayofant
09.04.2014 um 17:39 Uhr
Bastla Du bist der Beste!

Da komm ich mit meinen cd-md-Imännchen-Wissen natürlich nicht gegen an ;)

Ein kleines Problemchen hab ich jetzt noch. Sobald einmal ein BEISPIEL Ordner erzeugt wurde, kann keine weitere Datei in denselben Ordner verschoben werden. Ist ja auch klar, wenn vorhanden meckert Windows das Ordner existiert und setzt dann auch den folgenden MOVE-Befehl nicht mehr um. Habs schon mit "IF EXIST" versucht, klappt aber nicht so richtig

Vielen vielen Dank, hast mir sehr geholfen!
Bitte warten ..
Mitglied: bastla
LÖSUNG 09.04.2014, aktualisiert um 21:14 Uhr
Hallo mayofant!
Sobald einmal ein BEISPIEL Ordner erzeugt wurde, kann keine weitere Datei in denselben Ordner verschoben werden.
Wenn das Verschieben nicht vom erfolgreichen Erstellen des Ordners abhängig sein soll, einfach nur "&" zum Verknüpfen der Befehle verwenden (bei "&&" wird die folgende Anweisung nur ausgeführt, wenn der vorhergehende Befehl mit einem Errorlevel 0 beendet wurde) - gleich "scharf geschaltet" dann so:
for /f "delims=" %%i in ('dir /s/b/a-d "D:\Testordner\*.txt"') do md "%%~dpiBEISPIEL" 2>nul & move "%%i" "%%~dpiBEISPIEL\"
Grüße
bastla
Bitte warten ..
Mitglied: mayofant
09.04.2014 um 22:41 Uhr
Super, nun bin ich wunschlos glücklich!

Vielen Dank, habe viel gelernt
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst PS: zugehörige Import-Dateien ins Verzeichnis der Log-Dateien verschieben (4)

Frage von Jenny82 zum Thema Batch & Shell ...

Batch & Shell
Dateien verschieben über die shell mit bashscript (8)

Frage von rababar2014 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Windows Server
gelöst Exchange HyperV Prozessorlast (19)

Frage von theoberlin zum Thema Windows Server ...

Windows Server
Server mit Netzwerkaussetzern (18)

Frage von SarekHL zum Thema Windows Server ...

Server-Hardware
gelöst SPP von HP Abwärtskompatibel? (14)

Frage von fireskyer zum Thema Server-Hardware ...

LAN, WAN, Wireless
gelöst Batchdatei um einen Proxy einzustellen (14)

Frage von CrystalFlake zum Thema LAN, WAN, Wireless ...