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

Ordner Suchen und Verschieben Script

Frage Microsoft Windows Tools

Mitglied: madhias

madhias (Level 1) - Jetzt verbinden

13.02.2013, aktualisiert 08:46 Uhr, 1342 Aufrufe, 3 Kommentare, 1 Danke

Hallo allerseits,

Ich würde gerne ein Script basteln, welches Ordner mit bestimmten Namen in der gleichen Hierarchie auf andere Netzwerkfreigabe verschiebt. Wie bzw. womit soll ich beginnen - z.B. PowerShell? Das ist meine erste Frage. Ich habe mir ein paar Tutorials durchgelesen, und mir kommt vor, für diese Aufgabe schieße ich da mit Kanonen auf Spatzen. Vielleicht liege ich ja falsch =] Vielleicht tut es ja auch ein normales Batch Script.

Die Ordner sind numeriert sortiert in 100er Schritten, dann 1000er, dann 10000er:

Freigabe1 \ 10000 \ 10000-10099 \ 100xx \ OrdnerZ
Freigabe1 \ 11000 \ 11000-11099 \ 110xx \ OrdnerZ
usw.

Nun soll der OrdnerZ (welcher aber nicht immer da sein muß) in die Freigabe2 verschoben werden, also:

Freigabe2 \ 10000 \ 10000-10099 \ 100xx \ OrdnerZ
Freigabe2 \ 11000 \ 11000-11099 \ 110xx \ OrdnerZ
usw.

Vielleicht hat ja wer ein paar Denkanstöße, die mir weiterhelfen!

Besten Dank und Grüße, Matthias
Mitglied: colinardo
13.02.2013, aktualisiert um 13:13 Uhr
Hi madhias,

via Batch kannst du folgendes machen:
Am Anfang noch die Variablen an deine Umgebung anpassen.
Variablen:
ordername = Den suchst du
searchroot = Ab diesem Ordner suchst du
serverfreigabe = Selbsterklärend
01.
@echo off & setlocal ENABLEDELAYEDEXPANSION 
02.
set ordnername=diverses 
03.
set searchroot=C:\temp 
04.
set serverfreigabe=\\fritz.box\fritz.nas 
05.
 
06.
for /f "tokens=*" %%i IN ('dir /b /s /A:D "%searchroot%" ^| findstr /E "%ordnername%"') DO @( 
07.
         set p=%%i 
08.
	 set newPath=!serverfreigabe!\!p:~3%!\ 
09.
	 xcopy  "!p!" "!newpath!" /s /e /c /i /h /r /k /o /y 
10.
)
Grüße Uwe
Bitte warten ..
Mitglied: bastla
13.02.2013, aktualisiert um 13:14 Uhr
Hallo madhias und willkommen im Forum!

Sollte sich als Batch ungetestet etwa so machen lassen (als serverseitige Variante - wenn Du Quelle und Ziel als UNC-Pfad schreibst, sollte sich das auch vom Client aus verwenden lassen):
01.
@echo off & setlocal 
02.
set "Quelle=D:\Freigabe1" 
03.
set "Ziel=D:\Freigabe2" 
04.
set "Ordner=OrdnerZ" 
05.
 
06.
for /f "delims=" %%i in ('dir /s/b/ad "%Quelle%\%Ordner%"') do call :ProcessDir "%%i" 
07.
goto :eof 
08.
 
09.
:ProcessDir 
10.
set "ZielPfad=%~f1" 
11.
call set "ZielPfad=%%ZielPfad:%Quelle%=%Ziel%%%" 
12.
md "%Zielpfad%" 2>nul 
13.
xcopy /dey %1 "%Zielpfad%\" >nul && echo rd /s /q %1 
14.
goto :eof
Es werden (wegen des "echo" vor dem "rd") in dieser Version zwar der neue Ordner erstellt und die Inhalte kopiert, aber der alte Ordner nicht gelöscht - wenn es passt, einfach dieses "echo" entfernen ...

Grüße
bastla

[Edit]
@ colinardo: Da hatten wir ja ziemlich ähnliche Ideen - wobei ich zur Sicherheit auch einen leeren "OrdnerZ" verschiebe.
Bei Dir würde dafür auch zB ein "Weiterer OrdnerZ" mit behandelt ...
[/Edit]
Bitte warten ..
Mitglied: madhias
19.02.2013 um 16:23 Uhr
Hallo colinardo & bastla,

Besten Dank für die Tips! Das bastla Script habe so einmal eingerichtet und getestet, und funktioniert einwandfrei!

Viele Grüße, Matthias
Bitte warten ..
Ähnliche Inhalte
Entwicklung
gelöst Powershell Script: In Forest nach Computernamen suchen (13)

Frage von Agilolfinger zum Thema Entwicklung ...

Batch & Shell
Script, Groß- in Kleinschreibung für vordefinierte Ordner (7)

Frage von d4shoerncheN zum Thema Batch & Shell ...

Entwicklung
Mehrere Ordner per Script umbennenen (1)

Frage von wadimz zum Thema Entwicklung ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Windows Systemdateien
NTFS und die Defragmentierung (26)

Frage von WinLiCLI zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Zwei Subnetze mit je eigenem Router und Internetzugang verbinden (18)

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

Windows Server
WIndows Server 2016 core auf dem Intel NUC NUC5i5RYK i5 5250U (17)

Frage von IxxZett zum Thema Windows Server ...