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, 10382 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
String Zeichenpaare auslesen und bearbeiten (6)

Frage von ahstax zum Thema Batch & Shell ...

Batch & Shell
gelöst Mit Batchdatei Informationen auslesen und diese strukturiert in Excel ausgeben (9)

Frage von Flodsche zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: CPU-Auslastung eines Prozesses auslesen und als Variable definieren (3)

Frage von tralveller zum Thema Batch & Shell ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Statische Routen mit Shorewall, ISC-DHCP Server konfigurieren für Android Devices (24)

Frage von terminator zum Thema LAN, WAN, Wireless ...

Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

Windows Server
Exchange HyperV Prozessorlast (18)

Frage von theoberlin zum Thema Windows Server ...

Hardware
16-20 Port POE Switch mit VLAN (18)

Frage von thomasreischer zum Thema Hardware ...