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

STRING AUS EINER BATCHDATEI AUSLESEN

Frage Entwicklung Batch & Shell

Mitglied: NetzAdmin

NetzAdmin (Level 1) - Jetzt verbinden

12.07.2005, aktualisiert 13:13 Uhr, 10366 Aufrufe, 5 Kommentare

Ähnlich wie Instr(string) dem VB Kommando

Hallo Kollegen,

ich möchte gerne aus einem STRING (den hol ich mir mit einem FOR /R) auf gewisse Teile checken....

also z.B.
@echo off
for /r \\servername\ShareName\Verz\Subverz %%I in ("*.*") DO CALL :EVERY %%I
GOTO ENDE
:EVERY
ECHO %1
REM UND HIER MÖCHTE ICH z:b. Pfad vom Dateiname teilen, die 3-5 Stelle des Dateinamens wissen etc.


:ENDE

So, und wer kann mir da jetzt helfen ????

Danke
Mitglied: Biber
12.07.2005 um 10:44 Uhr
Moin Netzadmin,

helfen kann ich. Dann sag nur noch bitte, was Du alles von diesen Dateinamen/Pfaden brauchst. Also dieses "z.B." mal ausformulieren.

Grüße
Biber
Bitte warten ..
Mitglied: NetzAdmin
12.07.2005 um 10:58 Uhr
Status ist jetzt wie folgt...........
Bat ist einstweilen wie folgt.....
@echo off
for %%I in ("\\server\share\Verz\Sub1\Sub2\DR*.*") DO CALL :FOREACH %%~pI %%~nxI
GOTO ENDE
:FOREACH

ECHO Pfad ist %1
ECHO Dateiname ist %2

Dateiname ist jetzt zum Beispiel DR12345.678 oder DR34567.890

Und ich bräucht jetzt die ersten Drei Stellen des Dateinamens in einer Variable.....
Nur wie stell ich das an????
Bitte warten ..
Mitglied: Biber
12.07.2005 um 11:11 Uhr
01.
@echo off  
02.
for /r %%I in ("\\server\share\Verz\Sub1\Sub2\DR*.*")  DO CALL :Loop %%I  
03.
GOTO ThatsAll  
04.
:Loop  
05.
Set DateiName=%~n1 
06.
Set DateiName1bis3=%DateiName:~0,3% 
07.
ECHO Komplett:%1 Nur Name: %DateiName% Name1-3: %DateiName1bis3%   
08.
goto :eof 
09.
 
10.
:ThatsAll
Hope It Helps
Biber
Bitte warten ..
Mitglied: NetzAdmin
12.07.2005 um 12:45 Uhr
SUPER SUPER - DANKE

Jetzt wo ich es sehe, erinnere ich mich auch daran.............

Noch eine Frage, könnt ich eigentlich den letzten Teil des Pfades (also das letzte Verzeichnis) auch irgendwie extrahieren ????

for %%I in ("\\server\share\Verz\Sub1\Sub2\DR*.*") DO CALL :FOREACH %%~pI

Somit eigentlich "Sub2".........???

Sch... dass es die ganzen Substr Trim und Find aus VB nicht gibt (zumindest nicht ohne MSET.......Und MSET willi ich nicht verwenden.
Bitte warten ..
Mitglied: Biber
12.07.2005 um 13:13 Uhr
Mmmmja, Netzadmin,

gehen tut das - Aufwand hängt davon ab, wie variabel es sein soll
Wenn Du die Pfadebene ABSOLUT kennst, ist es Spielerei.

for /F "delims=\ tokens=4" %i in ("\\server\share\Verz\Sub1\Sub2\") do echo %i

(Output: ) Sub1

...so könntest Du die vierte Ebene meinetwegen rausfiltern

..Zum Beispiel also...
01.
for /F "delims=\ tokens=4" %i in ("\\server\share\Verz\Sub1\Sub2\") do Set VarDirname=%i                
Wenn du die Ebene nur RELATIV weißt ( meinetwegen immer die vorletzte), dann müsste man wieder ein kleines Loop innerhalb eines Bätchelchens einbauen, um die Anzahl der Unterpfade/der Argumente zu ermitteln.
01.
for /F "delims=\ tokens=1-5" %%i in ("\\server\share\Verz\Sub1\Sub2\") do goto :loop %%i %%j %%k %%l %%m  
02.
goto Ende 
03.
:loop 
04.
if (%5)==() set Vorletztes=%3 
05.
if (%4)==() set Vorletztes=%2 
06.
if (%3)==() set Vorletztes=%1 
07.
if (%2)==() (echo Fehler...gibt kein Vorletztes) & (goto :eof) 
08.
echo Vorletztes Unterverzeichnis ist %Vorletztes% 
09.
goto :eof 
10.
 
11.
:ende
Geht bestimmt auch eleganter... aber als Skizze reichts.

Wenn es ums LETZTE Unterverzeichnis geht, reicht ein Einzeiler (5 Ebenen max. angenommen):

for /F "delims=\ tokens=1-5" %i in ("\\server\share\Verz\Sub1\Sub2\") do for %a in (%i %j %k %l %m) do set Letztes=%a

Grüße
Biber
[Edit] Tipp/Denkfehlerkorrektur [/Edit]
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Mit Batchdatei Informationen auslesen und diese strukturiert in Excel ausgeben (9)

Frage von Flodsche zum Thema Batch & Shell ...

Microsoft Office
gelöst Excel: Einzelne Zeilen einer mehrzeiligen Zelle auslesen (3)

Frage von Booster07 zum Thema Microsoft Office ...

Batch & Shell
gelöst Mittels Batch eine Uhrzeit aus einer .txt auslesen und verabeiten (4)

Frage von Beatzler zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch xls nach aktuellem Datum auslesen und email senden (14)

Frage von michi-ffm zum Thema Batch & Shell ...

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 ...