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, 1163 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 ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Dos-Box, seltsame(s) Zeichen - Was und woher? (6)

Frage von Franz-Josef-II zum Thema Batch & Shell ...

Batch & Shell
gelöst PowerShell String zerlegen in Array, DataTable, Hashtable speichern (7)

Frage von derhoeppi zum Thema Batch & Shell ...

Windows Installation
gelöst Dos 6.22 Insallation (9)

Frage von Ghost-7K zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (22)

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

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

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

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...