Der Befehl Set-ExecutionPolicy ist entweder falsch geschrieben oder konnte nicht gefunden werden

Die Windows PowerShell ist eine von Microsoft entwickelte, mächtige Alternative zumWindows-Kommandozeilenprogramm cmd.exe und zum Windows Script Host.

Sie kann seit Windows Version 7 benutzt werden. Die Kommondas der PowerShell werden Cmdlets genannt.
Für Einsteiger gibt es hier einen Blog von Microsoft.

Cmdlets

Get-Location Ausgabe des aktuellen Verzeichnisses
Set-Location Wechseln des aktuellen Verzeichnisses
Clear-Host Löschen des Bildschirms
Copy-Item Kopieren einer oder mehrerer Dateien / eines ganzen Verzeichnisbaums
Get-Help Hilfe zu Befehlen
Remove-Item Löschen einer Datei / eines Verzeichnisses
Rename-Item Umbenennen einer Datei / eines Verzeichnisses
Move-Item Verschieben einer Datei / eines Verzeichnisses
Get-ChildItem Liste aller Dateien / Verzeichnisse im (aktuellen) Verzeichnis
Write-Output Ausgabe von Zeichenketten, Variablen etc. auf dem Bildschirm
Pop-Location In Verzeichnis wechseln, welches zuletzt auf dem Stack abgelegt wurde
Push-Location Verzeichnis auf dem Stack ablegen
Set-Variable Wert einer Variable setzen / Variable anlegen
Get-Content Ausgabe einer Datei
Select-String Suche und Filterung definierter Zeichenketten
Get-Process Liste aller momentan laufenden Prozesse
Stop-Process Beenden eines laufenden Prozesses
Tee-Object Standardeingabe in eine Datei oder Variable umleiten und entlang der Pipeline weiterreichen


Kleine Tips

Um ein Powershell-Skript aufzurufen, muss man entweder 

  • den kompletten Pfad mit einem "& " davor eingeben oder
  • ". " vor den Namen des Skriptes schreiben, z. B. powershell.exe -command „& c:\beispiel.ps1“ oder
  • mit einem Rechtsklick auf die ".ps1" -Datei "Bearbeiten" auswählen. Dann öffnet sich die Powershell-Konsole

Die Dateiendung für Powershell-Skripte ist ps1. In der Powershell selbst kann das Skript mit ./beispiel.ps1 gestartet werden. Aus Sicherheitsgründen verweigert das System defaultmäßig die Ausführung von Powershell-Skripten. Dies muss in der Powershell selbst mit

set-ExecutionPolicy  RemoteSigned

In PowerShell v 2.0 kann einfach mit ise das Powershell-GUI aufgerufen werden.

VariableBeschreibung
$_ Das aktuelle Objekte einer Pipeline, eines Filter und den verschiedenen Schleifen.
$$ Enthält das letzte Token der Shell-Eingabe
$? Enthält den erfolg/Fehler des letzten Befehls
$Args Enthält übergebene Parameter einer Funktion bzw. eines Skripts
$Error Enthält die bis zu 256 letzten Fehlermeldungen
$foreach Stellt die Aufzählungsvariable einer Schleife dar.
$HOME Heimatverzeichnis des Anwenders (%HOMEDRIVE%\%HOMEPATH%)
$Input Input piped einer Funktion oder eines Codeblocks
$Match Eine Hashtabelle, die alle Elemente enthält, welche durch den "-match"-Operator gefunden wurde.
$MyInvocation Informationen über das aktuelle Skript oder die Kommandozeile
$Host Informationen über den aktuellen Computer
$LastExitCode Exitcode der zuletzt aufgerufenen Anwendung (Nicht Powershellbefehl)
$true Boolean WAHR
$false Boolean FALSCH
$null "nichts", also ein NULL-Objekt.  Ideal um Objekte zu zerstören oder in IF-Abfragen zu vergleichen
$OFS "Output Field Separator". Hiermit geben Sie das Trennzeichen für die Konvertierung von Arrays zu String und umgekehrt an. Standardeinstellung ist das "Leerzeichen"
$ShellID Identifizierung die Shell. Normalweise "Microsoft.PowerShell"
$StackTrace Stacktrace der letzten Aktion
$env:variablenname Umgebungsvariablen abfragen
$global:varname Variablen "global" setzen und lesen

Weitere Infos

http://www.it-visions.de/scripting/powershell/

Beispiel

Ausgabe aller laufenden Dienste:

get-service | where-object {$_.status -eq "Running"}

Ausgabe von Infos über das System:

get-WmiObject win32_computersystem


Ausgabe aller installierten Programme (wie in "Programme und Funktionen")

get-wmiobject -class "Win32_Product" -namespace "root\CIMV2" -computername "." | format-list Vendor, Name, Caption, Description, Version, InstallDate, HelpLink

Snap-Ins - mehrere Cmdlets zusammen - erweitern die Funktionalität der PowerShell.

Wie starte ich ein ps1 Script?

Um das Skript ausführen zu können, rufen Sie über die Konsole in der Powershell den entsprechenden Ordner/Dateipfad auf. Geben Sie danach den Befehl \[Skriptname]. ps1 ein. Damit wird Ihr Skript gestartet.

Wie aktiviere ich PowerShell?

Um die Ausführung von Scripten zuzulassen öffnet man die Powershell mit Administratorrechten und gibt dort den Befehl „Set-ExecutionPolicy Unrestricted“ ein, drückt Eingabe und bestätigt die Sicherheitsabfrage mit „J“ für Ja. Hierdurch werden alle Scripte ausgeführt, egal welcher Herkunft.

Kann nicht geladen werden da die Ausführung von Skripts auf diesem System deaktiviert ist PowerShell?

Ausführung von PowerShell-Skripts aktivieren Lösung: Klicken Sie auf Start, tippen Sie PowerShell ein und benutzen Sie beim gefundenen PowerShell den Befehl Als Administrator ausführen. Die PowerShell erscheint mit Admin-Rechten. Tippen Sie Get-ExecutionPolicy ein und drücken Sie Enter.

Was bedeutet RemoteSigned?

Sind die Einstellungen auf RemoteSigned gesetzt, bedeutet das, dass lokale Scripte immer, heruntergeladene Scripte nur mit Signatur ausgeführt werden.