Top-Themen

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

Bitte um Unterstützung bei folgendem for

Mitglied: jschneider

jschneider (Level 1) - Jetzt verbinden

17.07.2008, aktualisiert 18.07.2008, 2596 Aufrufe, 2 Kommentare

Hallo,

ich stehe irgendwie auf dem Schlauch


ich habe eine Quelldatei auf Basis derer Inhalte ich Verzeichnisse und die dazugehörigen Gruppen im AD anlegen möchte und darüber hinaus diese Verzeichnise gleich auf die angelegte Gruppe berechtigen möchte. Soweit erstmal zum Hintergrund


meine Quelldatei hat z.B. folgende Inhalte

01.
\RootVerzeichnis1 
02.
\RootVerzeichnis1\Unterverzeichnis1 
03.
\RootVerzeichnis1\Unterverzeichnis2 
04.
 
05.
\RootVerzeichnis2 
06.
\RootVerzeichnis2\Unterverzeichnis1 
07.
\RootVerzeichnis2\Unterverzeichnis2\nocheinunterverzeichnis1 
08.
\RootVerzeichnis2\Unterverzeichnis3\nocheinunterverzeichnis2 
09.
\RootVerzeichnis2\Unterverzeichnis4\ 
10.
\RootVerzeichnis2\Unterverzeichnis5\nocheinunterverzeichnis1\nocheinunterverzeichnis3
usw.

mehr als 4 Ebenen wird es nicht geben

ich möchte jetzt also jede Zeile auseinandernehmen und die Werte zwischen den "\" verarbeiten ABER ich weiss halt nicht wieviele es je Zeile sind (von 1 -4 Werte) Das muss aber abgefangen werden. das ist eigentlich mein größtest Problem

Das Verzeichnis anlegen würde schon gehen, in dem ich den ganzen String so einlese, aber ich möchte auch die Gruppen anlegen die dann so heissen sollen:


Grp_Org_RootVerzeichnis1
Grp_Org_RootVerzeichnis1_Unterverzeichnis1
Grp_Org_RootVerzeichnis2_Unterverzeichnis5_nocheinunterverzeichnis1_nocheinunterverzeichnis3


was ich bsiher habe (allerdings früheste Alpha)


01.
 
02.
@echo off & setlocal 
03.
chcp 1252 
04.
 
05.
Set Source=C:\scripting\20-scripts\Quelldatei.txt 
06.
Set LW=R: 
07.
 
08.
 
09.
if not Exist %LW% net use %LW% \\Server1\Share1 
10.
 
11.
 
12.
 
13.
for /f "tokens=1,* delims=\" %%i in ('findstr "\" "%Source%"') do ( 
14.
   echo Hier erfolgt ein Wunder 
15.
   call :VerzeichnisAnlegen %%i "%%K" 
16.
   call :GruppeAnlegen 
17.
   call :BerechtigungSetzen 
18.
19.
goto :eof 
20.
 
21.
:VerzeichnisAnlegen 
22.
set "Verzeichnis=%1" 
23.
md %LW%\ 
24.
 
25.
goto :eof 
26.
 
27.
:GruppeAnlegen 
28.
Set "vGrp=%1" 
29.
Set grpPrefix=Grp_Org_ 
30.
net group %grpPfefix%%vGRP% /domain >NUL 
31.
goto :eof 
32.
 
33.
:BerechtigungSetzen 
34.
setacl Werte und Parameter hier (nicht das Poblem) 
35.
goto :eof 
36.
 
37.
 
Mitglied: Biber
17.07.2008 um 17:56 Uhr
Moin jschneider,

ich weiss nich'...
Mag sein, dass ich zu einfach gestrickt bin für den harten Admin-Alltag, aber ich würde es mir nicht so schwer machen.

Wenn ich Deine Beispielsätze bei mir in eine Datei js.txt packe, dann kann ich es jeweils so trennen (Beispiel am CMD-Prompt, mein Prompt sieht so: ">" aus):
01.
(=17:52:27  D:\temp=) 
02.
>For /f "delims=\ tokens=1-2" %a in (js.txt) do @if "%b"=="" @echo Roots: %a goto Roots 
03.
Roots: RootVerzeichnis1 goto Roots 
04.
Roots: RootVerzeichnis2 goto Roots 
05.
 
06.
(=17:53:45  D:\temp=) 
07.
>For /f "delims=\ tokens=1-3" %a in (js.txt) do @if "%c"=="" if "%b" NEQ "" @echo goto :EinSubdir %a\%b 
08.
goto :EinSubdir RootVerzeichnis1\Unterverzeichnis1 
09.
goto :EinSubdir RootVerzeichnis1\Unterverzeichnis2 
10.
goto :EinSubdir RootVerzeichnis2\Unterverzeichnis1 
11.
goto :EinSubdir RootVerzeichnis2\Unterverzeichnis4 
12.
 
13.
(=17:54:33  D:\temp=) 
14.
>For /f "delims=\ tokens=1-4" %a in (js.txt) do @if "%d"=="" if "%c" NEQ "" @echo goto :2Subdir %a\%b\%c 
15.
goto :2Subdir RootVerzeichnis2\Unterverzeichnis2\nocheinunterverzeichnis1 
16.
goto :2Subdir RootVerzeichnis2\Unterverzeichnis3\nocheinunterverzeichnis2
Genauso kannst Du es doch auch im Batch handeln, oder übersehe ich etwas?

Grüße
Biber
Bitte warten ..
Mitglied: jschneider
18.07.2008 um 11:35 Uhr
Hallo Biber,

mag auch sein, dass ich immer zu kompliziert denke und alles (ausser Brotschneiden) viel einfacher geht als ich denke.

ich habe gestern noch mal einen anderen Ansatz ausprobiert

und zwar zähle ich einfach die dinger nicht, sondern nutze sie wie sie sind

den String
01.
\\RootVerzeichnis2\\Unterverzeichnis2\\nocheinunterverzeichnis1 
nehme ich einfach wie er ist und nutze ihn einmal (in einer Funktion) als Pfad .. da muss ich ja nicht mehr viel mit anstellen

und einmal per
01.
set vGrp=!vGRP:\\=_!
ersetze ich die "\" einfach durch ein "_" *brustschwell*


damit habe ich alles was ich will
Bitte warten ..
Ähnliche Inhalte
Weiterbildung

Unterstützung bei Gehaltsverhandlungen

gelöst Frage von 133566Weiterbildung24 Kommentare

Hallo liebe Community Ich verfolge eure Seite bereits seit 2007 als ich meine Ausbildung zum Anwendungsentwickler begonnen habe. Einige ...

JavaScript

LocalStorage für folgende Funktion

Frage von xsto123JavaScript7 Kommentare

Hallo, ich bin Javascript Anfänger und habe folgende Funktion geschrieben mit deren Hilfe ich mehrere <div class="price-box"> per Button-Click ...

Batch & Shell

Protokollierung für folgendes Skript in Powershell

gelöst Frage von pixel0815Batch & Shell8 Kommentare

Moin zusammen, kann mir jemand sagen wie ich hier eine CSV Datei erstellen kann mit dem Skript? Ich würde ...

JavaScript

Wie funktioniert der Aufruf für folgende Funktion?

gelöst Frage von PeacerJavaScript4 Kommentare

Hallo Zusammen, habe hier eine HTML Seite und möchte wissen wie folgender Funktionsaufruf funktioniert: Folgende JS Dateien wurden im ...

Neue Wissensbeiträge
Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 3 StundenSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 3 StundenMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 3 StundenHardware6 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

MikroTik RouterOS

Mikrotik Advisory: Vulnerability exploiting the Winbox port

Information von colinardo vor 3 StundenMikroTik RouterOS

Brand aktuell: Eine Schwachstelle im Winbox-Port bei Mikrotik Routern erlaubt das Auslesen der User-Datenbank der Router. Patch ist aktuell ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux22 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL13 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server13 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...