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

Problem beim Verarbeiten mehrerer Pfade innerhalb einer for-Schleife

Frage Entwicklung Batch & Shell

Mitglied: 43547

43547 (Level 1)

18.02.2007, aktualisiert 26.02.2007, 3130 Aufrufe, 6 Kommentare

Hier Nitschke, wieder Mal ein (hoffentlich) kleines Problem. Ich habe Bastler's Lösung in mein vorhandenen Batch-Script eingebaut. Dieser sieht wie folgt aus:

:CREATE_BACKUP1
IF EXIST %LW_WINDIR%%LW_AAC_SYS%LW_C.drv FOR /f "delims== tokens=1-2" %%i in (%LW_WINDIR%%LW_AAC_SYS%LW_C.drv) do CALL :CREATE_BACKUP1_2 "%%i" "%%j"
GOTO CREATE_BACKUP2
:CREATE_BACKUP1_2
SET LW_TMP=%~1
SET PATH_TMP=%~2

COPY C:\HALLO\xyz.key %PATH_TMP%\System\Keys\xyz.key

Inhalt der LW_C.drv - Datei:

LW101=C:\Test-Ordner\Hallo\

LW102=D:\NocheinOrdner\Hier\

LW103=E:\NixDrin\

usw. usf.

Also folgendes passiert bzw. soll passieren. Je nachdem wieviele Pfade innerhalb der LW_C.drv - Datei gefunden werden, sollen diese eingelesen und weiter verarbeitet (z.B. COPY) werden. Das heißt bei jedem Durchlauf soll per COPY die xyz.key nach %PATH_TMP% kopiert werden. %PATH_TMP% stellt jeweils einen Pfade aus der LW_C.drv - Datei dar. Das Problem ist, dass der COPY Befehl nur beim letzten Pfad aus der LW_C.drv zur Ausführung kommt. Wenn also in der Datei 10 verschieden Pfade zu finden sind, wird der COPY Befehl nur auf den letzten Pfad angewendet, ABER bei jedem Pfad aus der LW_C.drv sollte der COPY Befehl ausgeführt werden.
Wie kann man das Problem lösen?

Mit freundlichen Grüßen
Marcel
Mitglied: Dani
18.02.2007 um 20:42 Uhr
G' Abend,
also ich gehe einfach mal davon aus, dass die PFade in der Datei untereinander stehen. Somit habe ich folgendes konstruiert:

Version 0.2
01.
@echo off 
02.
IF EXIST "C:\LW_C.drv" ( 
03.
    FOR /f "delims== tokens=2" %%i in (C:\LW_C.drv) do ( 
04.
        COPY C:\HALLO\xyz.key %%~i\System\Keys\xyz.key 
05.
        ..... 
06.
        ..... 
07.
08.
) else ( 
09.
BACKUP2 
10.
)
Das Ganze ist gerade nur Theorie! Ich hoffe, ich interpretiere deine Anforderungen richtig.
ICh habe das GOTO BACKUP2 durch das else ersetzt. Da ich nicht weiß, wie die ganze Datei aussieht.


Grüße
Dani
Bitte warten ..
Mitglied: 43547
18.02.2007 um 20:45 Uhr
Sorry, ich hab vergessen das innerhalb von :CREATE_BACKUP1_2 mehrere COPY Befehle folgen, das hatte ich der einfachheit halber auf einen befehl reduziert
Bitte warten ..
Mitglied: Dani
18.02.2007 um 20:51 Uhr
Ist ja kein Problem...ich mein Code oben geändert. Bei .... kannst du so viele Befehle untereinander schreiben, wie du möchtest.


Grüße
Dani
Bitte warten ..
Mitglied: Chipy
18.02.2007 um 21:11 Uhr
hi,


Wie Dani auch schon machte habe ich das Goto Error ersetzte gegen eine Else *g

sollte so funktionieren :

01.
@Echo off 
02.
 
03.
:CREATE_BACKUP1 
04.
IF EXIST test.drv ( 
05.
 
06.
FOR /f "delims== tokens=1-2" %%i in (test.drv) do Set LW_TMP=%%~i && SET PATH_TMP=%%~j && CALL :CREATE_BACKUP1_2 
07.
 
08.
)Else ( 
09.
 
10.
Echo Error 
11.
 
12.
13.
 
14.
 
15.
:CREATE_BACKUP1_2 
16.
 
17.
COPY C:\HALLO\xyz.key %PATH_TMP%\System\Keys\xyz.key
Bitte warten ..
Mitglied: Biber
22.02.2007 um 09:58 Uhr
Moin IT-KMS-Nitschke,

Nachfrage: Wie ist denn so denn der gefühlte Status dieses Threads?
Beantwortet? Offen? Doch nicht so wichtig?

Gruss
Biber
Bitte warten ..
Mitglied: Biber
26.02.2007 um 21:46 Uhr
Hmm.... ich hasse Selbstgespräche...

Thread geschlossen.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(3)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Batch Problem bei einer For Schleife (2)

Frage von Juergen42 zum Thema Batch & Shell ...

Batch & Shell
gelöst CMD: icacls in for-Schleife (2)

Frage von Lowrider614 zum Thema Batch & Shell ...

Batch & Shell
gelöst For Schleife kaputt? (5)

Frage von Peter32 zum Thema Batch & Shell ...

Batch & Shell
Batch: Variable Expansion in einer FOR-Schleife (9)

Frage von .Sessl zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...