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 finden - auf Laufwerk kopieren - Problem - Ordner enthält Leerstellen

Frage Entwicklung Batch & Shell

Mitglied: cybercomm

cybercomm (Level 1) - Jetzt verbinden

10.12.2007, aktualisiert 14:59 Uhr, 5787 Aufrufe, 11 Kommentare

Hallo,
nach dem lesen vieler Anleitungen habe ich noch keine Lösung oder das problem gefunden.

Ich muss unter Windows 2000 Dateien per Batch lokal von mehreren PC´s auf eine USB HDD kopieren.
Es soll von allen Benutzern des PC´s als Administrator das Verzeichnis Eigene Dateien gesichert werden. Im zu erstellenden Verzeichnis %computername% sollen alle Ordner Eigene Dateien der Benutzer mit vollständigen Pfad angegelegt werden.

Problem:
Mittels dir habe ich eine Verzeichnisliste erstellt, die alle Ordner enthält. Das kopieren scheitert, da eine Leerstelle im Ordnernamen ist.

Hier der Inhalt:
for /f %%e in ('dir /A:d /b /s "C:\*Eigene Dateien*"') do xcopy /I %%e %computername%

Fehlermeldung:
D:\Temp>xcopy /I C:\XP_PSB\Users\robin\Eigene D:\Temp\RESCUE_PSB
Datei Eigene nicht gefunden.
0 Datei(en) kopiert

Danke für Hilfe!
Mitglied: bastla
10.12.2007 um 12:50 Uhr
Hallo cybercomm und willkommen im Forum!

Generelle Vorgangsweise in derartigen Fällen: Dateinamen / Pfade mit enthaltenen Leerzeichen in Anführungszeichen einschließen. Da außerdem noch eine "for"-Schleife (welche Leerzeichen und Tabs als "delimiter", also Trennzeichen betrachtet) beteiligt ist, musst Du mit "delims=" dafür sorgen, dass keine Trennung erfolgt.

Daher sollte es so gehen:
01.
for /f "delims=" %%e in ('dir /A:d /b /s "C:\*Eigene Dateien*"') do xcopy /I "%%e" "%computername%"
Grüße
bastla
Bitte warten ..
Mitglied: cybercomm
10.12.2007 um 13:09 Uhr
Super! Danke!
Das Problem Leerzeichen ist gelöst.

Aber ... Wie bekomme ich am Zielort die Verzeichnisstruktur erstellt, da jetzt alle Dateien in ein Verzeichnis kopiert werden?

for /f "delims=" %%e in ('dir /A:d /b /s "C:\*Eigene Dateien*"') do xcopy /E "%%e" "D:\Temp\%computername%"

Edit: die Unterordner der Ordner Eigene Dateien werden erstellt, jedoch sollen die übergeordneten Ordner auch erstellt werden:
zB.
Username1\Eigene Dateien
Username2\Eigene Dateien
usw.
Grüße
Bitte warten ..
Mitglied: bastla
10.12.2007 um 13:14 Uhr
Hallo cybercomm!

01.
for /f "delims=" %%e in ('dir /A:d /b /s "C:\*Eigene Dateien*"') do xcopy /S /E /I "%%e" "%computername%"
Grüße
bastla
Bitte warten ..
Mitglied: cybercomm
10.12.2007 um 13:17 Uhr
hatte oben noch editiert:

Edit: die Unterordner der Ordner Eigene Dateien werden erstellt, jedoch sollen die übergeordneten Ordner auch erstellt werden:
zB.
Username1\Eigene Dateien
Username2\Eigene Dateien
usw.
Grüße
Bitte warten ..
Mitglied: bastla
10.12.2007 um 13:26 Uhr
Hallo cybercomm!

Dann solltest Du etwas anders ansetzen:
01.
for /f "delims=" %%e in ('dir /b /ad "C:\Dokumente und Einstellungen"') do xcopy /S /E /I "C:\Dokumente und Einstellungen\%%e\Eigene Dateien" "%computername%\%%e\Eigene Dateien"
Grüße
bastla
Bitte warten ..
Mitglied: 58502
10.12.2007 um 13:37 Uhr
@cybercomm

Versuche das mal:
01.
for /f "delims=" %%e in ('dir /A:d /b /s "C:\*Eigene Dateien*"') do xcopy "%%e\..\..\*.*" /E "%computername%\"
Du musst dich zur Ausführung aber entweder auf dem USB-Laufwerk befinden, oder zu %computername% noch den entsprechenden Laufwerksbuchstaben voranstellen.

@bastla
Der Xopy-Parameter /E schließt /S ein. Ein Backslash am Ende des Ziel-Verzeichnisnamens legt das Verzeichnis auch an, der Parameter /I erübrigt sich damit.
Anhand der Fehlermeldung lässt sich erkennen, dass eben nicht "Dokumente und Einstellungen" verwendet wird.
Bitte warten ..
Mitglied: cybercomm
10.12.2007 um 13:57 Uhr
Hallo,

@58502
for /f "delims=" %%e in ('dir /A:d /b /s "C:\*Eigene Dateien*"') do xcopy "%%e\..\..\*.*" /E "%computername%\"

Danke, funktionierte leider nicht, da hier alle Profildateien kopiert wurden (Desktop, Favoriten usw.)

folgende Variante funktioniert:

for /f "delims=" %%e in ('dir /b /ad "C:\User"') do xcopy /S /E /I "C:\User\%%e\Eigene Dateien" "C:\Temp\%computername%\%%e\Eigene Dateien"

kopiert die Eigenen Dateien inkl. Unterordner ins Ziel, mit separaten Ordnern, für jeden Benutzer.

Danke!
Bitte warten ..
Mitglied: 58502
10.12.2007 um 14:00 Uhr
Ok, dann habe ich das mit den "übergeordneten Ordnern" falsch interpretiert.
Es muss aber (unabhängig von Scripten und Fehlern ) sichergestellt sein, dass das Pofil auch immer unter C:\user liegt und die Nutzer die "Eigene Dateien" nicht verschoben oder umbenannt haben.
Bitte warten ..
Mitglied: bastla
10.12.2007 um 14:52 Uhr
Hallo cybercomm und siebenstein!

Damit die Bedingung, dass das Profil "auch immer unter C:\user liegt" zumindest auf "sich auf Laufwerk C: befindet" abgeschwächt werden kann, würde (unter Berücksichtigung von siebenstein's Hinweisen ) der Batch etwa so aussehen:
01.
@echo off & setlocal 
02.
set "Quelle=Eigene Dateien" 
03.
set "Ziel=%computername%" 
04.
 
05.
for /f "delims=" %%e in ('dir /s /b /ad "C:\*%Quelle%*"') do call :ProcessFolder "%%e" 
06.
goto :eof 
07.
 
08.
:ProcessFolder 
09.
set "U=%~dp1" 
10.
set "U=%U:~0,-1%" 
11.
for /f "delims=" %%i in ("%U%") do set "User=%%~nxi" 
12.
xcopy /E %1 "%Ziel%\%User%\%Quelle%\"
Grüße
bastla
Bitte warten ..
Mitglied: 58502
10.12.2007 um 14:58 Uhr
@bastla

Hehe, hat dir wohl keine Ruhe gelassen.
Dann hätte ich auch noch was als Ansatz: Ich würde %userprofile% auswerten, den Benutzernamen eliminieren und ausgehend davon die "Eigenen Dateien" suchen und kopieren.
Dann "bastla" mal schön. ))
Bitte warten ..
Mitglied: cybercomm
10.12.2007 um 14:59 Uhr
Ok, dann habe ich das mit den
"übergeordneten Ordnern"
falsch interpretiert.
Es muss aber (unabhängig von Scripten
und Fehlern ) sichergestellt sein, dass
das Pofil auch immer unter C:\user liegt und
die Nutzer die "Eigene Dateien"
nicht verschoben oder umbenannt haben.


Ja, das ist klar. Das sollte sichergestellt sein.

Der nächste mögliche, aber nicht notwendige Step wäre, auf den lokalen Laufwerken c und D nach allen xls, doc,pdf,msg zu suchen, die innerhalb der letzten 6 Monate geändert/erstellt wurden und diese ebenfalls wegzusichern.

Nochmals Danke.
Bitte warten ..
Ähnliche Inhalte
Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (12)

Frage von planetIT2016 zum Thema Windows Server ...

Festplatten, SSD, Raid
gelöst Fehlerhafte Blöcke im RAID 10 (12)

Frage von Kojak-LE zum Thema Festplatten, SSD, Raid ...

Netzwerkgrundlagen
gelöst Cisco SG500 Series LAG hat sich von selbst umgestellt (11)

Frage von Ex0r2k16 zum Thema Netzwerkgrundlagen ...