Powershell-Befehl | Was macht das |
---|---|
Get-ADUser -Filter "DisplayName -like 'Schuster'" -Properties * | Select-Object Name, EmailAddress, DisplayName | ft | Teile des Namens sind bekannt, wie ist der vollständige Name? |
Get-ADPrincipalGroupMembership lschuster | Select-Object Name | In welchen Gruppen ist der Benutzer? |
Get-ADGroupMember "de-dl its netpat admins" | Select-Object Name | Wer ist in dieser Gruppe? |
Get-ADGroupMember "de-dl its alle" | Get-ADUser -Filter "physicalDeliveryOfficeName -like 'Schelling'" -Properties * | Select-Object DisplayName, EmailAddress | ft | Wer sitzt in der SchellingStraße? |
Get-ADUser lschusterad -Properties * | Select-Object LockedOut | Ist Kollege X bereits gesperrt, oder hat er sich nur beim Passwort vertippt? |
Get-ADUser -Filter "EmployeeID -like '5626'" -Properties * | Select-Object DisplayName, EmailAdress | ft | Wer gehört zu dieser Personalnummer? |
Get-ADGroupMember -Identity "de-sg kpmg tfs users" -Recursive | Measure-Object | Wieviele Kollegen sind in dieser Gruppe? |
Alle Environments listen: Get-ChildItem Env:XXX
Um nach einer bestimmten Capabilitie zu suchen reicht ein Get-Item Env:XXX
Eine System-Variable kann mit eingetragen [System.Environment]::SetEnvironmentVariable("KOSMOS", "true", "Machine")
werden.
Zum Entfernen kann mit Remove-item env:XXX
die Variable wieder entfernt werden.
Mit Get-FileHash C:\pfad_zur_datei
kann der Hash-Wert einer Datei ermittelt werden. Die Powershell kann auch automatisch prüfen, Die Prüfung ist dann erfolgreich, wenn keine Rückgabe erfolgt. Für die Datei sonarqube-6.7.zip und die md5 Datei sonarqube-6.7.zip.md5 sieht das wie folgt aus. Compare-Object -ReferenceObject $(Get-FileHash .\sonarqube-6.7.zip -Algorithm md5|Select-Object -ExpandProperty Hash) -DifferenceObject $(cat .\sonarqube-6.7.zip.md5)
Falls man den HASH direkt zum kopieren vorliegen hat, geht das auch ganz einfach direkt. Compare-Object -ReferenceObject $(Get-FileHash .\sonarqube-6.7.zip -Algorithm md5|Select-Object -ExpandProperty Hash) -DifferenceObject F117E80A264EDA3D7C9D2EB4B73617BB
copy-item
fliegt auf die Schnauze beim rekursiven Kopieren von Verzeichnisbäumen mit tosession wenn das Quellverzeichnis eine eckige Klammer enthält. Beispiel Verzeichnisbaum:
.\test[Verzeichnis]
.\test[Verzeichnis]\test.txt
Resultat beim kopieren:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Write-Error], UnauthorizedAccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,PSCopyFileToRemoteSession
Ich wollte einen Bugreport aufmachen, hab aber erstmal noch gegoogelt. Das Problem ist seit Jahren bekannt und wird nicht gefixt.
Einzig sinnvolle Lösung, Verzeichnisbaum zippen.
Compress-Archive -Path '.\test(+)`[`]\' testcopy.zip -CompressionLevel Fastest
Copy-Item .\testcopy.zip 'c:\temp\' -Recurse -ToSession $session
Invoke-Command -Session -ScriptBlock { Expand-Archive -Path c:\temp\testcopy.zip -DestinationPath c:\temp }
Ich würde das als generelles Vorgehen beim kopieren empfehlen. Geht sowieso viel schneller
[Powershell MSSQL (T-SQL)] (http://mikefrobbins.com/2014/04/24/getting-started-with-administering-and-managing-microsoft-sql-server-with-powershell/)
[Get List of Features] (http://blog.technotesdesk.com/windows-server-2012-retrieving-a-list-of-installed-roles-and-features)
[Install Features:] (http://geekswithblogs.net/Wchrabaszcz/archive/2013/09/04/how-to-install-windows-server-features-using-powershell--server.aspx)
[SonarQube Plugin] (http://www.kodelog.com/coding-custom-sonarqube-plugin/)
[Sonar Qube Api] (https://docs.sonarqube.org/display/SONARQUBE43/Web+Service+API) bzw [hier] (https://docs.sonarqube.org/display/DEV/Web+API#WebAPI-Noteaboutapi/permissions)
[WindowsCredential] (http://www.thewindowsclub.com/stored-user-names-and-passwords-windows)