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, 3136 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?

MfG
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 ..
Ähnliche Inhalte
Batch & Shell
gelöst Abfrage ERRORLEVEL springt aus der FOR Schleife (8)

Frage von Galindiesel zum Thema Batch & Shell ...

Batch & Shell
gelöst Warum funktioniert das echo in meiner for-Schleife auch mit Sonderzeichen? (9)

Frage von Pedant zum Thema Batch & Shell ...

Batch & Shell
Verschachtelte For Schleife für Batch Neuling (3)

Frage von yperiu zum Thema Batch & Shell ...

Batch & Shell
gelöst Verlinkung erstellen Batch Datei mit for Schleife (2)

Frage von rusdav zum Thema Batch & Shell ...

Neue Wissensbeiträge
Administrator.de Feedback

Umgangsformen auf der Seite

(7)

Information von Frank zum Thema Administrator.de Feedback ...

Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(10)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Dir tc Befehl unter Windows 10 macht Probleme (14)

Frage von sugram zum Thema Batch & Shell ...

Windows Server
Windows Server 2016 RDS Remoteapp Anzeigefehler (11)

Frage von qlnGenius zum Thema Windows Server ...

Windows Server
Festplatten Ruhezustand Windows Server 2016 (10)

Frage von ahaeuser zum Thema Windows Server ...