-
Gesamte Inhalte
2.083 -
Registriert seit
-
Letzter Besuch
Alle erstellten Inhalte von BOfH_666
-
Excel-Dokument per Powershell
BOfH_666 antwortete auf ein Thema von leinadgnom in: Windows Forum — Scripting
Woher hast Du die Methode '*.SaveAs()'? $excel = new-object -comobject excel.application $excel | Get-Member | Where-Object -FilterScript {$_.MemberType -eq 'Method' -and $_.Name -like 'save*'} ... bei mir gibt es die gar nicht. Ausgabe: TypeName: System.__ComObject#{000208d5-0000-0000-c000-000000000046} Name MemberType Definition ---- ---------- ---------- Save Method void Save (Variant) SaveWorkspace Method void SaveWorkspace (Variant) -
VBS: Nur Dateien älter 5 Minuten in einem Ordner verarbeiten
BOfH_666 antwortete auf ein Thema von monstermania in: Windows Forum — Scripting
.... und noch mal eine Verständnis-Nachfrage von mir: Im Betreff fragst Du nach Dateien, die älter sind als 5 Minuten. Dann fragst Du nach Dateien, die in der letzten Stunde neu erstellt wurden und am Schluss fragst Du nach Dateien, die z.B. aus dem aktuellen Jahr sind. :) :D ;) :schreck: Vielleicht solltest Du die erwünschten Rahmenbedingungen erst mal konkret festlegen!? :cool: -
VBS: Nur Dateien älter 5 Minuten in einem Ordner verarbeiten
BOfH_666 antwortete auf ein Thema von monstermania in: Windows Forum — Scripting
Ginge auch Powershell? $Limit = Get-Date '01.01.2017' Get-ChildItem -Path 'C:\sample' -Filter '*.csv' | Where-Object -Property LastWriteTime -Value $Limit -GE -
Unterschied Get-ADuser -filter und Where
BOfH_666 antwortete auf ein Thema von rakli in: Windows Forum — Scripting
Um die Datenmenge zu begrenzen, die Du die Pipeline entlang schickst. Wenn Du bereits bei der "Datenerhebung" nur relevante Daten extrahierst, sparst Du Prozessorleistung und Speicherplatz und beschleunigst im Idealfall Deine Abfragen/Scripte deutlich. Flexibler und mächtiger ist aber "Where-Object", weshalb man häufig nicht wirklich drumherum kommt. -
Benutzer auslesen die nicht in Gruppe sind
BOfH_666 antwortete auf ein Thema von smigi in: Windows Forum — Scripting
Hmmm ... da wirst Du wohl alle direkt einzeln prüfen müssen. Also "Get-ADUSer -Filter *" und dann in der Property "MemberOf" prüfen, ob die von Dir gesuchte Gruppe da ist bzw. nicht da ist. -
Powershell Ordnerberechtigungen/Benutzer löschen
BOfH_666 antwortete auf ein Thema von numx in: Windows Forum — Scripting
Yep ... das hatte ich aber erst bemerkt, als ich die Antwort auf diesen Post hier schon geschrieben hatte ... :D -
Powershell Ordnerberechtigungen/Benutzer löschen
BOfH_666 antwortete auf ein Thema von numx in: Windows Forum — Scripting
Huch ... hier isses ja nochma mit Bild ... also denn nochmal: Das klingt nach einer Aufgabe für das gute alte "icacls" und da im Speziellen die Option "/remove". Du kannst das Ganze natürlich auch gern aus einem Powershell-Skript heraus aufrufen. -
Powershell Ordnerberechtigungen/Benutzer löschen
BOfH_666 antwortete auf ein Thema von numx in: Windows Forum — Scripting
Das Bild kann ich leider nicht sehen, aber das klingt nach einer Aufgabe für das gute alte "icacls" und da im Speziellen die Option "/remove". Du kannst das Ganze natürlich auch gern aus einem Powershell-Skript heraus aufrufen. -
AD-Replikation zu langsam? SID not found
BOfH_666 antwortete auf ein Thema von magheinz in: Windows Forum — Scripting
Weil wir neugierig sind und jetzt wissen wollen, ob es hilft, das cmdlet direkt auf einem DC abzufeuern. :D ;) :cool: :thumb1: :jau: :wink2: -
AD-Replikation zu langsam? SID not found
BOfH_666 antwortete auf ein Thema von magheinz in: Windows Forum — Scripting
OK - aber es geht ja gar nicht um ein AD-Cmdlet und spätestens der DCLocator sollte doch dann den lokal verfügbaren DC finden, oder? ... na ma kukn, was magheinz'ns Experimente am Montag ergeben. :thumb1: ;) :D -
AD-Replikation zu langsam? SID not found
BOfH_666 antwortete auf ein Thema von magheinz in: Windows Forum — Scripting
Keine Ahnung - aber ich gehe erst mal davon aus. .... würde ja Sinn machen eine lokal verfügbare Ressource nicht noch "aufwändig" irgendwo anders zu suchen. Supi Idee eigentlich - hast Du mal versucht, das Ganze direkt oder per Remoting auf einem DC laufen zu lassen. Funktioniert es dann? -
AD-Replikation zu langsam? SID not found
BOfH_666 antwortete auf ein Thema von magheinz in: Windows Forum — Scripting
Stimmt. Aber genau für solche Fälle bietet sich ja das "Verpacken" des eigentlichen Befehls in ein "Invoke-Command" an. Dem kannst Du explizit mitgeben, auf welchem Rechner/Server es ausgeführt werden soll. Hattest Du das schon mal probiert? -
AD-Replikation zu langsam? SID not found
BOfH_666 antwortete auf ein Thema von magheinz in: Windows Forum — Scripting
.... hmmm ... jein ... aber wenn ich schon eine Funktion oder ein Tool anbiete, die/das für die AD-Administration gedacht ist, sollte ich wenigstens die Möglichkeit vorsehen, es auch auf einen spezifischen Domain-Controller zu schicken. .... denke ich. ;) Naja, Set-ACL ist ja nicht explizit für's AD gemacht - es kann eben auch dafür genutzt werden, weil im AD auch ACLs gibt, die man manipulieren kann. Dann könntest Du eben den letzten Befehl so umstellen: Invoke-Command -ComputerName dc01 -ScriptBlock {Set-ACL gruppe folder permission} Manchmal ist es aber eben doch einfacher, mit dem "Status Quo" zu leben. Ist es wirklich so dringend, dass es nicht 2 Minuten warten kann? Du musst ja nicht zwingend vorm Monitor darauf warten, dass die 2 Minuten vergehen - das Script läuft auch ohne Deine "Aufsicht" bis zum Schluss durch, denke ich. :D ;) :cool: :thumb1: :wink2: -
AD-Replikation zu langsam? SID not found
BOfH_666 antwortete auf ein Thema von magheinz in: Windows Forum — Scripting
Du könntest per Invoke-Command sicherstellen, dass all cmdlets auf dem Server ausgeführt werden, den Du möchtest. Oder Du bittest den Drittanbieter die Standardfunktion nachzuliefern. ;) :thumb1: :cool: -
Script zum Löschen Profilordner (Rechte vergeben)
BOfH_666 antwortete auf ein Thema von Peterzz in: Windows Forum — Scripting
Peter, mit NEW-ITEM –path $Userdata.ProfilePath -type directory -force erzeugst Du einen neuen Ordner. Soll das so sein? Ich habe es so verstanden, dass Du einen existierenden entfernen wolltest !? Mit Join-Path -Path 'hier den Teil, den Du schon hast' -ChildPath 'hier den zusätzlichen Teil' kann man sich einen korrekten Pfad zusammenbauen. Siehe auch Join-Path -Online Oder Du benutzt einfache String-Operationen: $ProfilOrdner = $($Userdata.ProfilePath) + '.v2' -
Wildcard-Match für '?' auf LFN beschränken, 8.3 ausschließen?
BOfH_666 antwortete auf ein Thema von LigH in: Windows Forum — Scripting
Wenn die englische Sprache keine zu große Hürde für Dich darstellt und Du gern tiefer einsteigen möchtest, hast Du hier mal ein paar Starthilfen .... https://powershell.org/forums/topic/using-csv-files/ -
Wildcard-Match für '?' auf LFN beschränken, 8.3 ausschließen?
BOfH_666 antwortete auf ein Thema von LigH in: Windows Forum — Scripting
Get-ChildItem -Path 'Verzeichnispfad zu Deinen Dateien' -Filter 'Text1_*.txt' | Where-Object -Property BaseName -Value 'Text1_(\d{3})$' -Match | Foreach-Object -Process {Rename-Item -Path $_.FullName -NewName "Text1_Dummy3$($Matches[1]).txt"} Wie fast immer bei Powershell, gibt es natürlich mehrere Lösungen, die ans Ziel führen. Eine könnte diese sein. Ich bin davon ausgegangen, dass die Dateinamen 3 aufeinanderfolgende Zahlen enthalten. Wenn es drei beliebige zeichen sind, müsstest Du noch das Match-Pattern anpassen. Achja ... wenn Du unbedingt einen Einzeiler brauchst, kannst Du die Zeilenumbrüche nach den Pipes ("|") entfernen - so isses aber besser lesbar. ;) :thumb1: -
Wildcard-Match für '?' auf LFN beschränken, 8.3 ausschließen?
BOfH_666 antwortete auf ein Thema von LigH in: Windows Forum — Scripting
Die Syntax ist anders - das stimmt. Aber Batch wird seit Jahren nicht mehr weiterentwickelt - und das aus gutem Grund. ;) Mit Powershell wäre Dein Problem keins. Wenn Du noch eine Weile in der Windows-Adminsitration unterwegs sein möchtest, würde sich die Kenntnis von Powershell auf lange Sicht für Dich mit ziemlich großer Sicherheit auszahlen. :thumb1: ... und Hilfe bekommst Du für Powershell auch schneller und vielfältiger. -
Batch: Dateinamen umbenennen und Erstellungsdatum hinzufügen
BOfH_666 antwortete auf ein Thema von Barchie in: Windows Forum — Scripting
Wenn es in dem Fall nur im die ExecutionPolicy geht - so lange das nicht durch andere Mechanismen verhindert wird, kannst Du ihr eine Verknüpfung auf das von Dir erstellte Powershell-Script ins Startmenü oder sonstwohin packen und die Powershell mit der Option "-ExecutionPolicy Bypass" aufrufen. -
powershell Gruppenmitgliedschaft kopieren
BOfH_666 antwortete auf ein Thema von rakli in: Windows Forum — Scripting
Na wenn ich vorher gewußt hätte, dass es was zu gewinnen gibt ...... :D ;) :cool: :schreck: -
powershell Gruppenmitgliedschaft kopieren
BOfH_666 antwortete auf ein Thema von rakli in: Windows Forum — Scripting
Die Gruppenmitgliedschaften eines Users stehen im Attribut "MemberOf". Da brauchst Du eigentlich kein "Get-ADPrincipalGroupMembership". $Gruppen = Get-ADUser -Identity 'USER' -Properties MemberOf | Select-Object -ExpandProperty MemberOf ForEach ($Gruppe in $Gruppen) { Add-ADGroupMember -Identity $Gruppe -Members zieluser } So sollte es eigentlich klappen -
PowerShell - Datei-Erstellungsfehler
BOfH_666 antwortete auf ein Thema von -maDDin- in: Windows Forum — Scripting
War es nicht so, dass die Open Document Formate alle nur komprimiertes XML sind? The Document Foundation hält doch mit solchen Informationen bestimmt nicht hinterm Berg, oder? ;-) -
string in Hochkomma setzen
BOfH_666 antwortete auf ein Thema von rakli in: Windows Forum — Scripting
Normalerweise muss mann das nicht machen. Die Powershell kann damit umgehen. Aber wenn Du darauf bestehst - versuch doch mal das hier: add-MailboxPermission -id ps.substitute -user "'$($i)'" -AccessRights FullAccess -
Gateway per Script auslesen bei mehreren Verbindungen
BOfH_666 antwortete auf ein Thema von tsaenger in: Windows Forum — Scripting
hmmmm ... und warum kommt dann Powershell nicht in Frage? Mit Get-CimInstance -ClassName Win32_NetworkAdapterConfiguration -Filter "NOT Description LIKE '%TAP%'" | Where-Object -Property DefaultIPGateway -Value '' -NOTLIKE wärst Du bestimmt schon ein Stück näher am Ziel, oder? -
Mit Powershell mehrere Active Directory Gruppen auslesen und die Gruppenmember in Datei ausgeben
BOfH_666 antwortete auf ein Thema von rmw-home in: Windows Forum — Scripting
$Array = Get-ADGroup -Filter "Name -like 'GruppeXX*'" | Select-Object -ExpandProperty Name $Liste = foreach ($element in $Array) { Get-ADGroupMember -Identity $element | Get-Aduser -Properties name, DisplayName, Mail | Select-Object name, DisplayName, Mail,@{Name='Group';Expression={$element}} } $Liste $Liste | Export-Csv -Path C:\Scripte\2017\Januar\GruppenMitglieder.csv -NoTypeInformation -Delimiter ';' Vielleicht hilft Dir das ja weiter. Wenn Du Daten hast, die quasi eine Tabelle darstellen, macht es mehr Sinn, diese auch als solche zu exportieren. Das kannst Du mit Export-CSV erledigen. Um die einzelnen Gruppen dann noch auseinanderzuhalten, hab ich mal eine weitere Spalte mit dem Gruppennamen hinzugefügt. Du könntest natürlich auch jeweils eine Datei pro Gruppe machen. Noch ein Tipp für dieses Forum (vielleicht auch für alle Foren): Es zeugt von gutem Stil, wenn man Code postet, diesen auch als solchen zu formatieren. Dafür gibt es entsprechende Optionen in den jeweiligen Editoren. Und es macht Dir und den Menschen, die Dir helfen sollen das Leben einfacher, wenn Du möglichst keine Aliasse und Abkürzungen verwendest und entsprechende Einrückungen verwendest. Na denn ... viel Spaß