Veröffentlicht 28. Dezember 200915 j Hallo, möchte folgende TXT Datei auslesen: ==== C:\Programme\ScriptLogic Manager C:\Programme\CA ===== mittels For-Schleife möchte ich diese Pfade auslesen (man beachte das Leerzeichen im 1. Pfad) und dann auf einem Netzlaufwerk ggf. die gleiche Ordnerstruktur erstellen: if not exist Netzlaufwerk:\C\Programme\ScriptLogic Manager\ mkdir Netzlaufwerk:\C\Programme\ScriptLogic Manager\ Wie mache ich dies?
28. Dezember 200915 j du willst also alle Ordner im Pfad "C:\Programme\" auslesen, oder was? in welcher Progsprache haste dir das denn gedacht, oder bevorzugst du etwas...? welches Ziel verfolgst du? brauchen schon ein paar präzisere Angaben, haste dir eig. schon mal selber n Kopf drüber gemacht vllt. sogar gegoogelt?
28. Dezember 200915 j Autor du willst also alle Ordner im Pfad "C:\Programme\" auslesen, oder was? in welcher Progsprache haste dir das denn gedacht, oder bevorzugst du etwas...? welches Ziel verfolgst du? brauchen schon ein paar präzisere Angaben, haste dir eig. schon mal selber n Kopf drüber gemacht vllt. sogar gegoogelt? Sprache: Batch habe eine *.txt Datei mit mehreren Pfaden Diese möchte ich für eine Sicherung mittels Batch auslsesen. Die Sicherung erfolgt auf einem NAS-Server in einem Ordner "C". Hier soll automatisch die Pfad-Struktur der einzelnen Pfade angelegt werden. Das Problem besteht darin, dass einige Pfade Leerzeichen enthalten (siehe 1.Pfad). Habe bereits folgendes getestet: for /f "tokens=2*" %%a in (sicherung.txt) do set "DIRECTORY=%%b" edit: Mit diesem Befehl: FOR /F "delims=;" %%I in (nas-sicherung.bks) DO echo %%I erhalte ich den kompletten Pfad: Bsp: C:\Prgramme\Programm Hallo\test Wie kann ich die Variable nun umsetzen, dass diese ab dem 4.Zeichen anfängt. ´(In diesem Fall Variable= Programme\Programm Hallo\test Bearbeitet 28. Dezember 200915 j von Mr.Vain
29. Dezember 200915 j grüße dich... naja Batch im Allgemeinen = Stapelabarbeitung^^ okay, habs aber verstanden! Habe mal deine Versuche aufgegriffen und deinen Wünschen entsprechend angepasst: FOR /F "delims=;" %%I in (Pfade.txt) DO ( set var_pfad=%%I set var_pfad_abzeichen=%var_pfad:~3,20 echo %var_pfad_abzeichen% ) hierbei habe ich die einzelnen Zeilen als String (Umgebungsvariable) zwischen gespeichert und im Anschluß daran mit Hilfe des :~das Anfangszeichen, sowie wieviele Zeichen ab da angegeben! Sprich er zeigt momentan ab dem 4ten Zeichen 20 weitere an! Vllt hilft dir das ja, ansonsten sehe ich keine großen Chancen lediglich mit der CMD da was zu reißen...! Aber vllt würde dir ja Perl da weiter helfen, damit kannste ziemlich viel anstellen...
29. Dezember 200915 j Autor Danke für deine Hilfe, habs nun so hinbekommen: for /f "delims=\ tokens=1*" %%i in (pfade.txt) do ( echo %%j)
30. Dezember 200915 j Autor Hallo, habe folgende TXT DAtei: =============== C:\Programme\Program Test\Daten C:\TMP =============== Diese möchte ich für eine Sicherung mittels Batch auslsesen. Die Sicherung erfolgt auf einem NAS-Server in einem Ordner "C". Hier soll automatisch die Pfad-Struktur der einzelnen Pfade angelegt werden. Das erstellen der Ordner auf dem Nas erledige ich so: for /f "delims=\ tokens=1*" %%i in (nas-sicherung.bks) do ( if not exist "%NAS_LW%\%%j" mkdir "%NAS_LW%\%%j" ) Wie binde ich folgende Schleife hier ein, sodass für jeden Eintrag auch etwas kopiert wird? for /F "tokens=*" %%k in (nas-sicherung.bks) do ( %INSTPATH%\setup\tools\robocopy.exe "%%k" "%NAS_LW%\%%j" /MIR /R:0 /W:0 /NP /FFT >> %LOGFILE%)
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.