rushhour
Goto Top

Powershell mehrere Ordner anlegen

Hallo zusammen,
ich versuche mich grade an einem PowerShell Script mit dem ich mehrere Ordner und Berechtigungen dazu anlegen kann.
Funktioniert soweit auch alles wenn es nur ein Ordner ist. Bei mehreren hab ich Probleme. Ist wahrscheinlich wie immer nur eine Kleinigkeit..
Hier mal der Code ohne den Teil mit den Berechtigungen..

$OrdnernameInstall = "Programme2","Programme3"
$PfadInstall = "C:\" + $OrdnernameInstall

if ((test-path $PfadInstall -pathType container) -ne $True) {
$OrdnernameInstall = New-Item -Path $PfadInstall -ItemType "directory"
Invoke-WmiMethod -Path "Win32_Directory.Name='$OrdnernameInstall'" -Name uncompress
write-host "$NeuerOrdnerInstall erstellt"}
else {
$NeuerOrdnerInstall = $PfadInstall
write-host "$NeuerOrdnerInstall existiert bereits."
}

Content-Key: 514606

Url: https://administrator.de/contentid/514606

Printed on: April 24, 2024 at 09:04 o'clock

Member: emeriks
emeriks Nov 13, 2019 at 11:26:36 (UTC)
Goto Top
Member: rushhour
rushhour Nov 13, 2019 at 11:40:57 (UTC)
Goto Top
Sorry, ich steh grad aufm Schlauch .. Er erstellt einen Ordner der "Programme3 Programme4" heißt.. Die Ausgabe kommt allerdings 2 mal, also läuft er 2x in die Schleife?!

$OrdnernameInstall = @('Programme3','Programme4')
$PfadInstall = "C:\" + $OrdnernameInstall
$OrdnernameInstall | ForEach-Object{

if ((test-path $PfadInstall -pathType container) -ne $True) {
$Ordnername = New-Item -Path $PfadInstall -ItemType "directory"
Invoke-WmiMethod -Path "Win32_Directory.Name='$Ordnername'" -Name uncompress
write-host "$NeuerOrdnerInstall erstellt"}
else {
$NeuerOrdnerInstall = $PfadInstall
write-host "$NeuerOrdnerInstall existiert bereits."
}}
Member: erikro
Solution erikro Nov 13, 2019 updated at 14:33:46 (UTC)
Goto Top
Moin,

so geht das nicht.

$OrdnerInstall = @('Ordner1','Ordner2',...)  
$PfadInstall = "C:\"  

foreach($Ordner in $Ordnerinstall) {

   if(Test-path "$Pfadinstall\$Ordner ...) {  

      New-Item -path "$pfadinstall\$ordner" -itemtype directory  
      ...

   }

hth

Erik
Member: emeriks
emeriks Nov 13, 2019 at 12:02:20 (UTC)
Goto Top
  1. benutze bitte Code-Tags beim Posten eines Quellcodes
  2. Zeile 2 gehört nach Zeile 3
Mitglied: 141815
141815 Nov 13, 2019 updated at 12:52:12 (UTC)
Goto Top
Zitat von @erikro:

Moin,

so geht das nicht.

foreach($Ordner in $Ordnerinstall) {


Nur zur Info

$Ordnerinstall ≠ $OrdnernameInstall
Member: erikro
erikro Nov 13, 2019 at 14:33:29 (UTC)
Goto Top
Zitat von @141815:

Zitat von @erikro:

Moin,

so geht das nicht.

foreach($Ordner in $Ordnerinstall) {


Nur zur Info

$Ordnerinstall ≠ $OrdnernameInstall

Ooooops. Danke. Aber der TO hat es offensichtlich gemerkt. Ich korrigiere den Fehler für folgende Generationen. face-smile