Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| pub:powershell [2015/05/20 11:54] – Marco Krage | pub:powershell [2019/05/18 11:49] (aktuell) – Marco Krage | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Powershell ====== | ====== Powershell ====== | ||
| + | |||
| + | Display Powershell Version | ||
| + | $PSVersionTable.PSVersion | ||
| + | If the variable does not exist, it is safe to assume the engine is version 1.0. | ||
| + | |||
| + | Ausgabe aus mehreren Befehlen zusammen | ||
| + | <code powershell> | ||
| + | Get-VM | Get-NetworkAdapter | | ||
| + | Where-object {$_.Type -ne " | ||
| + | Select @{N=" | ||
| + | </ | ||
| ===== Windows Powershell ===== | ===== Windows Powershell ===== | ||
| + | ==== Remote Session ==== | ||
| + | Enter-PSSession -ComputerName $computerName -Credential user@domain.local | ||
| - | Import-Module activedirectory | + | $cred = Get-Credential user@domain.local |
| + | Enter-PSSession -ComputerName $computerName -Credential $cred | ||
| - | Search-ADAccount –LockedOut | + | ==== Get Registry Value ==== |
| + | Get-ItemPropertyValue " | ||
| - | Search-ADAccount | + | ==== Log Date ==== |
| + | Write-Host (get-date).DateTime | ||
| + | ==== Delete RAW if no matching JPG exists ==== | ||
| + | Get-ChildItem *.arw | % { if (-not (Test-Path $_.Basename+" | ||
| - | ===== AD Powershell ===== | + | ==== Drucker Migration |
| + | |||
| + | Drucker von altem Printserver zu neuem Printserver migieren inklusive Standarddrucker. | ||
| <code powershell> | <code powershell> | ||
| - | $store = @() | + | $Printers |
| - | $domain | + | |
| - | $searcher | + | $oldPrintserver |
| - | $searcher.SearchRoot | + | $newPrintserver |
| - | $searcher.PageSize | + | |
| - | $searcher.Filter | + | foreach($oldPrinter in $Printers) { |
| + | Write-Host " | ||
| + | |||
| + | if( $oldPrinter.Name.StartsWith(" | ||
| + | | ||
| + | $pos = $oldPrinter.Name.LastIndexOf(" | ||
| + | $PrinterHost | ||
| + | $PrinterName = $oldPrinter.Name.Substring($pos+1) | ||
| + | |||
| + | Write-Host " | ||
| + | |||
| + | $WMIPrinter | ||
| + | $res = $WMIPrinter.AddPrinterConnection("\\$newPrintserver\$PrinterName" | ||
| - | $proplist | + | |
| - | foreach ($i in $propList){$prop=$searcher.PropertiesToLoad.Add($i)} | + | |
| - | $results = $searcher.FindAll() | + | if($newPrinter) { |
| + | if($oldPrinter.Default) { | ||
| + | Write-Host " | ||
| + | | ||
| + | } | ||
| - | foreach ($result in $results){ | + | Write-Host " |
| - | $pwdlastset=[Int64]($result.properties.Item(" | + | $oldPrinter.Delete() |
| - | $pwdAge=New-TimeSpan $([datetime]:: | + | }else{ |
| - | | + | Write-Host " |
| - | $obj = New-Object System.Object | + | } |
| - | | + | |
| - | $obj | Add-Member -type NoteProperty -name Alter -value $($pwdAge.days) | + | |
| - | $obj | Add-Member -type NoteProperty -name DN -value $($result.properties.Item("Distinguishedname" | + | |
| - | | + | |
| - | } | + | |
| } | } | ||
| - | return | + | Write-Host "Press any key to continue ..." |
| + | $x = $host.UI.RawUI.ReadKey(" | ||
| </ | </ | ||
| + | ===== Active Directory ===== | ||
| - | ===== Exchange | + | ==== Gesperrte Benutzer ==== |
| + | <code powershell> | ||
| + | Import-Module activedirectory | ||
| + | |||
| + | Search-ADAccount –LockedOut | ||
| + | |||
| + | Search-ADAccount -LockedOut | Unlock-ADAccount | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Alte Computerkonten finden ==== | ||
| + | <code powershell> | ||
| + | $then = (Get-Date).AddDays(-60) # The 60 is the number of days from today since the last logon. | ||
| + | |||
| + | Get-ADComputer -Property Name, | ||
| + | |||
| + | Set-ADComputer -Enabled $false | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | ===== Exchange ===== | ||
| Die Powershell und auch die Exchange-Verwaltungsshell nutzen s.g. Cmdlets. Diese setzt sich aus einem Verb und einem Hauptwort zusammen. Zum Beispiel '' | Die Powershell und auch die Exchange-Verwaltungsshell nutzen s.g. Cmdlets. Diese setzt sich aus einem Verb und einem Hauptwort zusammen. Zum Beispiel '' | ||
| Zeile 137: | Zeile 192: | ||
| </ | </ | ||
| + | |||
| + | ==== Datenbank ==== | ||
| + | Übersicht über Datenbanken und deren Größe. | ||
| + | Get-MailboxDatabase -Status | ft name, | ||
| + | |||
| + | |||
| + | ==== Postfach ==== | ||
| + | Postfach suchen | ||
| + | Get-Mailbox -filter " | ||
| + | |||
| + | Getrennte Mailboxen auflisten | ||
| + | Get-MailboxStatistics -server SERVERNAME | Where {$_.DisconnectDate -ne $null} | ||
| + | |||
| + | Mailbox Cleanup um getrennte Postfächer sofort in der GUI anzuzeigen | ||
| + | Clean-MailboxDatabase " | ||
| + | |||
| + | Postfachgröße | ||
| + | Get-MailboxStatistics kragem | ft DisplayName, | ||
| + | |||
| + | Postfachgrößen aller Postfächer sortiert und in Größe in MB | ||
| + | Get-MailboxDatabase | Get-MailboxStatistics | Sort-Object -Descending -Property TotalItemSize | ft DisplayName, | ||
| + | |||
| + | Postfachgrößen als CSV (Komma) exportieren | ||
| + | Get-MailboxStatistics | Select-Object DisplayName, | ||
| + | | ||
| + | ==== Postfachfunktionen ==== | ||
| + | Postfächer mit Active Sync | ||
| + | Get-CASMailbox | where {$_.ActiveSyncEnabled -eq $true } | ||
| + | |||
| + | Postfächer mit OWA | ||
| + | Get-CASMailbox | where {$_.OWAEnabled -eq $true } | ||
| + | |||
| + | ==== Geräte ==== | ||
| + | Alle Geräte-Details anzeigen | ||
| + | Get-ActiveSyncDevice | fl UserDisplayName, | ||
| + | |||
| + | Alle Geräte-Details einer Mailbox anzeigen | ||
| + | Get-ActiveSyncDevice -Mailbox " | ||
| + | |||
| + | Alle Geräte einer Mailbox anzeigen mit LastSync Datum. Alte Geräte oben. | ||
| + | Get-ActiveSyncDeviceStatistics -Mailbox " | ||
| + | |||
| + | Alte Geräte finden | ||
| + | Get-ActiveSyncDevice -Result Unlimited | Get-ActiveSyncDeviceStatistics | Where {$_.LastSuccessSync -le (Get-Date).AddDays(" | ||
| + | |||
| + | zum löschen der Geräte statt an '' | ||
| + | |||
| + | Device manuell über ID löschen (Achtung: Wird aus allen evtl. aktiven Mailboxen gelöscht!) | ||
| + | Get-ActiveSyncDevice | where {$_.DeviceId -eq " | ||
| + | |||
| + | Device aus bestimmter Mailbox löschen (über Identity) | ||
| + | Get-ActiveSyncDevice | where {$_.Identity -eq " | ||
| + | |||
| + | http:// | ||
| + | Set-CasMailbox pponzeka –ActiveSyncAllowedDeviceIDs number1, | ||
| + | Set-CasMailbox pponzeka –ActiveSyncAllowedDeviceIDs: | ||
| ==== Zertifikat erneuern ==== | ==== Zertifikat erneuern ==== | ||
| Zeile 155: | Zeile 266: | ||
| - | ===== VMware RDM Lun ID ===== | + | ===== VMware===== |
| + | ==== RDM + LUN ID ==== | ||
| < | < | ||
| $RDMs = @() | $RDMs = @() | ||