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, 1320 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 ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Per Skript Ordner überwachen und Textdateien editieren und verschieben (4)

Frage von ThorstenL zum Thema Batch & Shell ...

Windows 7
Netzwerkverbindungsverknüpfung per Script in Ordner

Frage von n0wn23 zum Thema Windows 7 ...

Batch & Shell
gelöst Nach bestimmten Ordner namen suchen und in einem anderem Pfad kopieren (8)

Frage von erdgnrft zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Erkennung und -Abwehr
Virenschutz - Meinungen (29)

Frage von honeybee zum Thema Erkennung und -Abwehr ...

Windows 10
gelöst Welches OS für Firmengeräte? (20)

Frage von MarkusVH zum Thema Windows 10 ...

Netzwerke
Abisolierwerkzeug (18)

Frage von SarekHL zum Thema Netzwerke ...

Exchange Server
SBS2011: POP3-Connector 10 MB Grenze Email Benachrichtigung (17)

Frage von bogi1102 zum Thema Exchange Server ...