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

DOS Verzeichnisnamen zerlegen

Frage Microsoft Windows XP

Mitglied: Naja-2013

Naja-2013 (Level 1) - Jetzt verbinden

26.02.2013 um 12:34 Uhr, 1171 Aufrufe, 3 Kommentare

Hallo, kaum zu glauben, aber es gibt noch Momente in denen man auf DOS Wissen zurückgreifen muss. Heute ist ein solcher Moment. Vielleicht kann mir jemand helfen.

Ich lese die Homeshare Variable aus und schreibe sie in eine Textdatei. In der Textdatei steht dann:

HOMESHARE=\\server\freigabe$\HOMES\VZ\Benutzer

Diese Zeit möchte ich gerne in Einzelteile zerlegen und daraus einen neuen Namen bilden:

HOMESHARE= (kann gelöscht werden)
\\server (ändert sich in einen festen Wert \\Server2
\freigabe$ (ändert sich in einen festen Wert \freigabe2$
\HOMES (ändert sich in einen festen Wert Homes2
\VZ (bleibt erhalten)
\Benutzer (bleibt erhalten)

Am Ende brauche ich eine neue Variable
\\server2\freigabe2$\HOMES2\VZ\Benutzer

Halt jemand eine Idee wie ich mit DOS Befehlen das erreichen kann?
Mitglied: bastla
26.02.2013 um 13:07 Uhr
Hallo Naja2013 und willkommen im Forum!

Naja, mit DOS-Befehlen hättest Du da schlechte Karten, aber da schon seit langem CMD verwendet wird ...

Meinst Du das etwa so?
01.
@echo off & setlocal 
02.
for %%a in ("%Homeshare%") do for %%b in ("%%~pa.") do set "HomeshareNew=\\Server2\freigabe2$\Homes2\%%~nxb\%%~nxa" 
03.
echo %HomeshareNew%
Grüße
bastla

P.S.: Das Schreiben in eine Temporär-Datei wäre schon eher "DOS-like" ...
Bitte warten ..
Mitglied: Naja-2013
26.02.2013 um 13:24 Uhr
Hallo Bastla, erstmal vielen Danke für deine Hilfe.

Das Leben kann so einfach sein. Kannst du mir sagen worüber du es steuerst das bestimmte Zeichen unterdrückt und behalten werden?
Bitte warten ..
Mitglied: bastla
26.02.2013, aktualisiert um 14:00 Uhr
Hallo Naja-2013!

Eigentlich werden keine Zeichen unterdrückt, sondern Bestandteile des Pfades extrahiert - mit "%%~nxa" wird zB aus dem gesamten Pfad in "%%a" nur der Name und die Extension (= alles nach dem letzten Punkt - wenn zB Benutzer mit dem Anmeldenamen "Vorname.Zuname" angelegt wurden) verwendet.

Für die zweite Zerlegung wird mit "%%~pa." der Pfad (das wäre "server\freigabe$\HOMES\VZ\" - die führenden "\\" werden nicht benötigt, da ja nur der letzte Teil interessiert; ansonsten wäre "%%~dpa." zu verwenden) zum "Elternordner" erzeugt und mit "." ergänzt, da der letzte Teil ansonsten nicht als Ordner erkannt würde, um dann wie vorher beschrieben den Namen entnehmen zu können.

Mehr zum Thema liefert die Onlinehilfe mit "for /?" (ziemlich gegen Ende der Ausgabe) bzw Friemlers einschlägiges Tutorial.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Sonstige Systeme
Batch Dateinamen zerlegen (5)

Frage von Mummel zum Thema Sonstige Systeme ...

Mac OS X
Malware startet DoS-Angriffe gegen Macs

Link von transocean zum Thema Mac OS X ...

Hyper-V
gelöst HyperV - ungültige MS-DOS Funktion (14)

Frage von Franz-Josef-II zum Thema Hyper-V ...

Batch & Shell
gelöst Unterdrücken eines DOS Fenster bei Ausführen einer Batchdatei (10)

Frage von Zockervogel zum Thema Batch & Shell ...

Neue Wissensbeiträge
Sicherheits-Tools

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

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst ZIP-Archive nach Dateien durchsuchen und Pfade ausgeben (33)

Frage von evinben zum Thema Batch & Shell ...

Router & Routing
Routingproblem in Homerouter-Kaskade mit Raspi (19)

Frage von Oldschool zum Thema Router & Routing ...

Server
Freenas schlechte Schreib Performance bei NFS (16)

Frage von janosch12 zum Thema Server ...

Windows Server
Fehler Vertrauensstellung im AD (14)

Frage von thomas-99 zum Thema Windows Server ...