Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Übergeordneter Ordner als Variabel

Frage Entwicklung Batch & Shell

Mitglied: gilldex

gilldex (Level 1) - Jetzt verbinden

27.07.2010, aktualisiert 09:57 Uhr, 3129 Aufrufe, 4 Kommentare

Hallo zusammen,

ich habe folgendes Problem zu bewältigen:
Ich möchte einen Ordner, welchen ich vorher als Variabel %bkp_dir% gespeichert habe innerhalb des Ordners "C:\test\" rekursiv suchen lassen.
Anschliessend soll mir der Pfad in welchem dieser Ordner liegt als Variabel gespeichert werden. Ich habe da bereits etwas angefangen, habe aber Probleme nur den übergeordneten Ordner als Variabel zu bekommen.

Folgende Zeile habe ich bis jetzt.:
FOR /F "delims=" %%G IN ('dir "C:\test\" /b /ad /s^|find /i "%bkp_dir%"') DO SET working_dir=%%G

Dieser Code gibt mir aber immer den ganzen Pfad zum Ordner aus, etwa so:
C:\test\sicherung\20100725

Ich möchte aber dass er mir nur anzeigt, in welchem Ordner der Ordner %bkp_dir% gefunden wurde, hier also:
sicherung

Falls das nicht gehen sollte würde mir auch schon reichen, wenn er mir den ganzen Pfad angibt, in welchem der Ordner liegt:
C:\test\sicherung\

Das habe ich auch hinbekommen, indem ich die Variabel einfach um die 8 Zeichen kürze, welche den Ordnernamen ausmachen. Aber falls der Ordnername einmal mehr als 8 Zeichen beinhaltet bekomme ich so natürlich Probleme.

Vielen Dank für eure Hilfe!
Mitglied: Snowman25
27.07.2010 um 09:44 Uhr
Halloo gilldex,

Hast du dir schonmal überlegt, mit PUSHD und POPD zu arbeiten?

Gruß
Snow
Bitte warten ..
Mitglied: gilldex
27.07.2010 um 13:32 Uhr
Danke für deine Antwort, aber leider weiss ich nicht wie ich deinen Tipp nutzen soll/kann. Mir ist die Funktion von PUSHD und POPD zwar klar, aber nicht im Zusammenhang mit meinem Problem.

Für einen kleinen Denkanstoss wäre ich daher durchaus dankbar.
Bitte warten ..
Mitglied: bastla
27.07.2010 um 14:18 Uhr
Hallo gilldex!

Da Du ja vermutlich auch nach kompletten Ordnernamen und nicht nur nach Fragmenten (welche durch "find" ja schließlich gefunden würden) suchen willst, etwa so:
01.
set "working_dir=" 
02.
FOR /F "delims=" %%G IN ('dir "C:\test\%bkp_dir%" /s /b /ad 2^>nul') DO SET "working_dir=%%G" & set "Parent_dir=%%~dpG" 
03.
if not defined working_dir echo Nicht gefunden! & goto :eof 
04.
for %%i in ("%Parent_dir:~,-1%") do set "Parent_dir_name=%%~nxi"
Grüße
bastla
Bitte warten ..
Mitglied: gilldex
28.07.2010 um 08:31 Uhr
Vielen Dank bastla.

Es hat alles wunderbar geklappt.
Es gibt halt doch noch so einiges was man dazu lernen kann, wie ich an deiner Lösung erkennen musste.
Bitte warten ..
Ähnliche Inhalte
Windows Tools
Robocopy - ACL für übergeordnete Verzeichnisse bei Option -S

Frage von grefabu zum Thema Windows Tools ...

Batch & Shell
gelöst Kopieren einer Datei in mehrere Ordner mit PowerShell (7)

Frage von FRANHE zum Thema Batch & Shell ...

Windows Userverwaltung
gelöst Windows Freigabe: Zugriff auf alle Ordner trotz Sicherheitseinstellungen (27)

Frage von Pandreas zum Thema Windows Userverwaltung ...

Batch & Shell
gelöst Batch xkopie von Ordner in Ordner (3)

Frage von TicTakTeo zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Datenschutz

Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht

(1)

Information von BassFishFox zum Thema Datenschutz ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Proxy Server Settings Cloud + EWS (17)

Frage von SomebodyToLove zum Thema Exchange Server ...

Windows Server
PDF Editor für den Einsatz auf Terminal Servern (16)

Frage von kwame501 zum Thema Windows Server ...

Windows Installation
Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen (14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Windows Server
S MIME Zertifikat aus AD in Outlook einbinden (12)

Frage von chb1982 zum Thema Windows Server ...