Powershell Grundbefehle
In dieser kleinen Auflistung befinden sich so die Klassiker die man kennen sollte. Gerade im Heimbereich.
[bg_collapse view=”button-green” color=”#4a4949″ icon=”arrow” expand_text=”Powershell Basics” collapse_text=”ausblenden” ]Computer Herunterfahren
Stop-Computer
(Get-WmiObject -Class Win32_OperatingSystem -ComputerName .).Win32Shutdown(1)
Computer Neustart
Restart-Computer –Force
(Get-WmiObject -Class Win32_OperatingSystem -ComputerName .).Win32Shutdown(2)
Abmelden
(Get-WmiObject -Class Win32_OperatingSystem -ComputerName .).Win32Shutdown(0)
Laufwerke anzeigen
Get-PSDrive
Laufwerk für Ordner erstellen
New-PSDrive -name TMP -PSProvider FileSystem -root C:\Temp
Laufwerk entfernen
Remove-PSDRive TMP
Den Registry Pfad öffnen
cd HKLM:\Software
Set-Location HKCU:\Software\Microsoft\Windows
Registry Einträge anzeigen
Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\
Get-ItemProperty “HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Excel.exe”
Wann wurde der Computer gestartet und wie lange läuft er
$Computer = “VMWIN732”
$Info = Get-WmiObject -Class Win32_OperatingSystem -Computername $Computer
$Start = $Info.ConvertToDateTime($Info.LastBootUpTime)
Write-Host “Einschaltzeit: “$Start.ToString()
$Time = (Get-Date) – $Start
Write-Host “Laufzeit:” $Time.Days “Tage,” $Time.Hours “Stunden,” $Time.Minutes “Minuten,” `
$Time.Seconds “Sekunden”
Wie ist der Computername
$(Get-WmiObject Win32_Computersystem).name
$SystemName = (New-Object -ComObject WScript.Network).computername
Computer Details ermitteln
gwmi win32_ComputerSystem
OS ermitteln
(Get-WmiObject Win32_OperatingSystem).Caption
BIOS ermitteln
Get-wmiobject win32_bios
Festplatten ermitteln
Get-WmiObject -Class Win32_DiskDrive
Festplatten Details
gwmi win32_logicaldisk
Get-WmiObject Win32_LogicalDisk | Format-List *
Festplatten Belegung
gwmi win32_logicaldisk -filter “drivetype = 3”
Treiber Informationen
Get-WmiObject Win32_SystemDriver
Freigaben auflisten
Get-WmiObject Win32_Share
Prozesse anzeigen
Get-Process
Get-Process | sort-object -property WS -Descending | select-object -First 15
Ping
Test-Connection -Computername $Computer
Test-Connection -count 1 -Computername $Computer
Anzeige aller Dateien
Get-ChildItem -Recurse –Force
Dateien verschieben
Move-Item -Path C:\Temp\Test.txt -destination E:\Temp\Test.txt
Registry Schlüssel verschieben
Move-Item HKLM:\Software\MeineSoftware\* HKLM:\Software\DeineSoftware
Datei umbenennen
Rename-Item -Path C:\Temp\MeineDatei.txt -Newname DeineDatei.txt
Punktzeichen aus Dateinamen entfernen
Get-ChildItem *.* | foreach {Rename-Item $_ -NewName $($_.name -replace ‘\.’, $null)}
Ermitteln der 10 größten PDF Dateien
Get-Childitem -recurse -include *.pdf | Sort-Object length -descending | Select-Object -first 10
NTFS Rechte auf einen anderen Ordner übertragen
$ACL = Get-Acl “C:\Temp”
Set-Acl “D:\Temp” $acl
Suche nach dem Wort Rolle in allen .txt Dokumenten
Select-String “D:\DATA\DESKTOP\__Loses_Zeug\*.txt” -pattern “Rolle”
Get-ChildItem *.* -exclude *.pdf -recurse | Select-String -Pattern “Rolle”
Kopiere die ersten 30 Zeilen in eine neue Datei
Get-Content MeineDatei.txt -totalcount 30 | Set-Content DeineDatei.txt
Alle .txt Dateien im aktuellen Ordner komprimieren
Compress-Archive -Path *.txt -DestinationPath Texdateien.zip
RemoteDesktop Dienst installieren
Add-WindowsFeature Remote-Desktop-Services
Ein Dienst auf den Starttyp „Automatisch“ setzen
Set-Service Netlogon -startuptype automatic
Einen Dienst starten
Start-Service Netlogon
Remoteverwaltung aktivieren
Enable-PSRemoting –force
Computer zur Domäne hinzufügen
Add-Computer -DomainName “ndsedv.de” –Restart
Details eines Benutzers ermitteln
Get-ADUser -Identity Joern.Walter -Properties *