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

backup Batch Pfad hat Leerzeichen

Frage Entwicklung Batch & Shell

Mitglied: meisterigel

meisterigel (Level 1) - Jetzt verbinden

15.06.2007, aktualisiert 14:04 Uhr, 5099 Aufrufe, 4 Kommentare

wie kann ich einen Pfad in einer Batchdatei änder

Hallo

ich habe ein kleines Backuptool gebaut welches aus einer Externen Datei die zu sichernden Pfade ausliest und dann nacheinander abarbeitet das geht auch alles solange gut bis ein Pfad mit einem Leerzeichen kommt.
nun meine Frage gibt es eine Möglichkeit den Pfad von z.B.: C:\Dokumente und Einstellungen\ich\Application Data\Microsoft automatisch in
C:\Dokume~1\Herzberg\Applic~1\Microsoft umzuwandeln wenn ja wie soll das gehen.

01.
set ziel="c:\SICHERUNG\" 
02.
 
03.
REM ---Der Ort der Quelldatei wird aus der quellen.txt glesen 
04.
 
05.
FOR /f "delims=" %%f IN (quellen.txt) DO call :loop "%%f" 
06.
goto ende 
07.
 
08.
ANGEBEN!!!----------------------------------------------------------------------- 
09.
 
10.
:loop  
11.
set von="%~1" 
12.
set ordner="%~1" 
13.
set ordner=%ordner::=% 
14.
 
15.
 
16.
 
17.
 
18.
REM --------------------------------------- Ausgeben der Befehlsliste  
19.
REM --------------------------------------- Name des Sicherungsordner wird erstellt  
20.
set jahr=%date:~-4% 
21.
set monat=%date:~-7,2% 
22.
set tag=%date:~-10,2% 
23.
set datum=%tag%.%monat%.%jahr% 
24.
set nach="%ziel%%datum%\%ordner%\" 
25.
 
26.
 
27.
REM --------------------------------------- Logdatei wird geschrieben  
28.
echo Starte Datensicherung am %datum% um %time% von %von% nach %nach% >>%windir%\backup.log >>%ziel%\backup.log 
29.
 
30.
 
31.
REM --------------------------------------- Daten werden Kopiert  
32.
xcopy %von% %nach% /S /E /C /H /O /R /Y /D /V
[Edit 15.06.2007 11:44]
Ich habe mir erlaubt, den Batchschnipsel in einen Codeblock zu setzen. Danke...

Dani
(Moderator)
Mitglied: bastla
15.06.2007 um 11:44 Uhr
Hallo meisterigel!

gibt es eine Möglichkeit den Pfad von z.B.: C:\Dokumente und Einstellungen\ich\Application Data\Microsoft automatisch in C:\Dokume~1\Herzberg\Applic~1\Microsoft umzuwandeln wenn ja wie soll das gehen.

Versuch es mit
01.
set "von=%~s1"
Siehe dazu auch "for /?"

Grüße
bastla
Bitte warten ..
Mitglied: meisterigel
15.06.2007 um 12:24 Uhr
das geht so nicht
kann ich das nicht so wie mit den Doppelpunkte im Pfad machen die kann ich ja auch löschen.
Ich möchte ja nur das nach jedem backslash und dem sechsten Zeichen ein ~1 steht
muss doch gehen

PS.: die Hilfe habe ich schon gelesen
Bitte warten ..
Mitglied: bastla
15.06.2007 um 13:42 Uhr
Hallo meisterigel!

Um das zu verifizieren:

In Deiner "quellen.txt" steht der existierende Pfad "C:\Dokumente und Einstellungen\Herzberg\Application Data\Microsoft". In Deinem Batch hast Du set von="%~1" durch set "von=%~s1" ersetzt, also etwa so:
01.
FOR /f "delims=" %%f IN (quellen.txt) DO call :loop "%%f" 
02.
goto ende 
03.
 
04.
:loop  
05.
set "von=%~s1" 
06.
echo %von%
(das echo nur zur sofortigen Kontrolle).

Du bekommst damit nicht den ShortName?

Grüße
bastla
Bitte warten ..
Mitglied: bastla
15.06.2007 um 14:04 Uhr
... aber vielleicht gleich auch ein Alternativvorschlag:
01.
@echo off & setlocal 
02.
set "ziel=c:\SICHERUNG" 
03.
FOR /f "delims=" %%f IN (quellen.txt) DO call :loop "%%f" 
04.
goto :eof 
05.
:loop 
06.
set "von=%~1" 
07.
set "ordner=%von::=%" 
08.
set jahr=%date:~-4% 
09.
set monat=%date:~-7,2% 
10.
set tag=%date:~-10,2% 
11.
set datum=%tag%.%monat%.%jahr% 
12.
set "nach=%ziel%\%datum%\%ordner%" 
13.
echo xcopy "%von%" "%nach%\" /S /E /C /H /O /R /Y /D /V
Das echo steht zum Testen drinnen.

Geändert habe ich insbesondere das Setzen der Anführungszeichen sowie die Verwendung der "\", etwa zwischen %ziel% und %datum%. (Sinnvoller fände ich übrigens ein Datum der Art %jahr%-%monat%-%tag%.)

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
Leerzeichen im Pfad (4)

Frage von Jallio zum Thema Batch & Shell ...

Batch & Shell
gelöst Per Batch Winrar entpacken - Probleme bei Pfad (7)

Frage von Concurve zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Variable setzten mit Leerzeichen (3)

Frage von Marlon1 zum Thema Batch & Shell ...

Batch & Shell
gelöst Leerzeichen per Batch entfernen vor der Weiterbearbeitung (3)

Frage von daHartl zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...