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

Powershell - Zugriffsberechtigungen von Ordnern übertragen

Frage Entwicklung Batch & Shell

Mitglied: koehne

koehne (Level 1) - Jetzt verbinden

19.09.2013 um 16:51 Uhr, 3530 Aufrufe, 5 Kommentare

Hallo,

ich möchte gerne die ACL's von einem Ordner mit dem Namen "Personaldaten" auf ca. 100 anderen Ordner übertragen.

Meine Ordnerstruktur:

Mitarbeiterpapiere
Mitarbeitername
Personaldaten
Zertifikate

Mit
01.
$DirectoryPath_org="D:\Mitarbeiterpapiere\__Name_Vorname\Personaldaten" 
02.
$DirectoryPath_dest="D:\Mitarbeiterpapiere\__Name_Vorname1\Personaldaten" 
03.
 
04.
$ACL=Get-Acl $DirectoryPath_org 
05.
Set-Acl -path $DirectoryPath_dest -AclObject $ACL
habe ich erfolgreich von einem Ordner auf einen anderen die ACL's übertrage können. Allerdings hätte ich das jetzt gerne automatisiert für alle Personaldaten-Order in den Mitarbeiterordnern.

Versucht habe ich
01.
 
02.
$suchordner="D:\Mitarbeiterpapiere" 
03.
 
04.
$gefunden = Get-ChildItem $suchordner -recursiv | where {$_.psIsConatainer -eq $true -and $_.Name -like 'Personaldaten'} 
05.
 
06.
$DirectoryPath_org="D:\Mitarbeiterpapiere\__Name_Vorname\Personaldaten" 
07.
 
08.
$ACL=Get-Acl $DirectoryPath_org 
09.
Set-Acl -path $gefunden -AclObject $ACL
was leider nicht funktioniert hat.

Im Grunde muss ich nur jeden Personaldaten-Ordner Pfad herausfinden und die ACL's dann dorthin kopieren, nur wie?!

Ich muss dazu sagen, dass meine Powershellkentnisse gegen Null tendieren. Ich hoffe einer von euch hat einen gescheiten Tipp für mich?!

MfG
Mitglied: colinardo
19.09.2013, aktualisiert um 18:55 Uhr
Hallo koehne,
kein Problem:
01.
$pathOriginal = "D:\Mitarbeiterpapiere\__Name_Vorname\Personaldaten"  
02.
$destRoot = "D:\Mitarbeiterpapiere" 
03.
$aclOriginal = Get-Acl $pathOriginal 
04.
Get-ChildItem $destRoot -Recurse | ?{$_.PSIsContainer -eq $true -And $_.Name -like "Personaldaten"} | %{set-acl -Path $_.FullName -AclObject $aclOriginal}
Grüße Uwe
Bitte warten ..
Mitglied: koehne
20.09.2013, aktualisiert um 09:25 Uhr
GENIAL! Danke schön! Funktioniert einwandfrei.

Kannste mir evtl. noch kurz erklären für was | und ? und % steht!?
Bitte warten ..
Mitglied: colinardo
20.09.2013 um 09:28 Uhr
Zitat von koehne:
GENIAL! Danke schön! Funktioniert einwandfrei.

Kannste mir evtl. noch kurz erklären für was | und ? und % steht!?
| ist eine Pipe damit werden die Objekte an den nachfolgenden Befehl übergeben
?{} ist ein Alias für das CMDLet where-object
%{} ist ein Alias für das CMDLet foreach-object

Grüße Uwe
Bitte warten ..
Mitglied: koehne
20.09.2013 um 09:37 Uhr
Zitat von colinardo:
> Zitat von koehne:
> ----
> GENIAL! Danke schön! Funktioniert einwandfrei.
>
> Kannste mir evtl. noch kurz erklären für was | und ? und % steht!?
| ist eine Pipe damit werden die Objekte an den nachfolgenden Befehl übergeben
?{} ist ein Alias für das CMDLet where-object
%{} ist ein Alias für das CMDLet foreach-object

Grüße Uwe

Eine letzte Frage von mir, dann bin ich glücklich:

Was muss ich am Quelltext ändern um z.B. alle Name_Vorname Ordner die Zugriffsberechtigungen zu ändern?
Denn jeder dieser Ordner hat ja den Namen des jeweiligen Mitarbeiters...
Dazu müsste man nur irgendwie die Ordnernamen auslesen.
Geh ich da recht in der Annahme, dass dazu einfach nur die Passage
01.
"-And $_.Name -like "Personaldaten"
durch
01.
-And $_.Name -like "*_*"
zu ersetzen oder reicht es einfach nur
01.
Get-ChildItem $destRoot | ?{$_.PSIsContainer -eq $true} | %{set-acl -Path $_.FullName -AclObject $aclOriginal} 
zu nehmen?
Bitte warten ..
Mitglied: colinardo
20.09.2013, aktualisiert um 10:03 Uhr
Zitat von koehne:
oder reicht es einfach nur
01.
Get-ChildItem $destRoot | ?{$_.PSIsContainer -eq $true} | %{set-acl -Path $_.FullName -AclObject $aclOriginal} 

das hast du genau richtig erfasst, wenn nur die Namen der Mitarbeiter alle auf der ersten Ebene im Ordner "D:\Mitarbeiterpapiere" liegen ist das die richtige Vorgehensweise.

Wenn es das dann war noch ein gelöst dran.
Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Windows Server
PowerShell permissions eines ACE übertragen
gelöst Frage von Peter.SysAdmWindows Server2 Kommentare

Hallo, ich habe mich soeben hier angemeldet und werde mein Profil selbstverständlich in den nächsten Tagen noch weiter füllen. ...

Batch & Shell
Powershell Primäresmtpadresse an anderes Postfach übertragen
gelöst Frage von 124611Batch & Shell15 Kommentare

Guten Morgen, ich möchte gerne von ausgeschiedenen Benutzern, deren primäre SMTP Emailadresse an ein globales Postfach übertragen. Das globale ...

Windows Server
Zugriffsberechtigung auf eine Datei
gelöst Frage von takvorianWindows Server2 Kommentare

Hallo zusammen, in einem Windows Server 2012R2 Domänennetzwerk habe ich ein Problem mit dem Zugriff auf eine Datei welche ...

Batch & Shell
Powershell zwei Ordner vergleichen
gelöst Frage von Rabauke84Batch & Shell2 Kommentare

Hallo zusammen, ich hab folgendes Problem: Unter meinem Profilordner (oberste Ebene) gibt es ca 140 Ordner mit den Namen ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 6 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 13 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 15 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 18 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...