SID-500

Home » PowerShell » Erstellen eines PowerShell Profils

Erstellen eines PowerShell Profils

Beim Starten der Windows PowerShell werden Standardmodule geladen und der Ort der Ausführung wird auf c:\users\username festgelegt. Möchte man beim Starten der PowerShell weitere Module laden, einen Alias für einen Befehl erstellen oder ganz einfach Informationen anzeigen, so empfiehlt sich das Erstellen eines PowerShell Profils.

Das Profil besteht aus einer PS1 Datei und liegt (wenn es erstellt wurde) im Ordner Dokumente des Benutzers und wird  beim Start geladen. Das Profil wird nur auf den jeweiligen Benutzer angewendet.

Voraussetzungen überprüfen

Da die Profildatei bei jedem Start der PowerShell geladen wird, muss überprüft werden, ob die Executionpolicy das Ausführen von eigens erstellten Dateien vom Dateityp ps1 zulässt. Die Ausführungsrichtlinie sollte auf Remotesigned oder Unrestricted (nicht empfohlen) festgelegt sein.

Get-ExecutionPolicy

Unbenannt.PNG

Zeigt der Wert Restricted dann muss die Executionpolicy angepasst werden.

Set-ExecutionPolicy RemoteSigned

3.PNG

Erstellen der Profildatei

Nun kann die Datei mit New-Item erstellt werden.

New-Item -ItemType File -Path $Profile -Force

4.PNG

Die Profildatei befindet sich nun wie im Windows Explorer ersichtlich im Benutzerprofil unter C:\Benutzer\BenutzerName\Dokumente\WindowsPowerShell.

Bild1

Erstellen eines Skripts

Nun öffnet man die Datei. Ich empfehle für das Bearbeiten PowerShell ISE.

5.PNG

Nun kann das Skript angepasst werden. Als Beispiel möchte ich mein Skript zeigen, welches

  1. eine Begrüßung zeigt (in grün)
  2. den angemeldeten Benutzer anzeigt
  3. das Datum aufruft
  4. das Standardvereichnis ändert
  5. und einen Alias anlegt

7.PNG

Write-Host "Willkommen auf" (Invoke-Expression hostname) -ForegroundColor Green
Write-Host "Sie sind angemeldet als" (Invoke-Expression whoami)
Write-Host "Heute ist der" (Get-Date)
Set-Location c:\
New-Alias Time Get-Date -Force

Beim Start der PowerShell wird die Profildatei geladen und alle Befehle werden nacheinander ausgeführt.

8.PNG

Der konfigurierte Alias Time ist ebenfalls verfügbar und ruft Get-Date auf.

9.PNG

Quelle: https://technet.microsoft.com/de-at/library/ff461033.aspx

Mein Profil

Abschließend möchte ich meine Profil-Datei teilen. Da ich auf C: starten möchte, den Bildschirm geleert haben möchte und auch die Größe des Fensters eher klein haben möchte schaut es so aus:

set-location c:\
cls
$Shell = $Host.UI.RawUI
$size = $Shell.WindowSize
$size.width=80
$size.height=34
$Shell.WindowSize = $size
$size = $Shell.BufferSize
$size.width=80
$size.height=3000
$Shell.BufferSize = $size

2 Comments

  1. […] Beim Schließen der PowerShell wird die WhatIfPreference wieder auf Default zurückgesetzt. Wer das ändern möchte, der sollte ein PowerShell Profil erstellen: Erstellen eines PowerShell Profils. […]

    Like

  2. […] Besser als Patrick kann ich es auch nicht beschreiben, wie man ein Powershell Profil anlegt, deshalb hier nur der Link zu seinem Artikel Erstellen eines Powershell Profils. […]

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Categories

Who is the blogger?

My name is Patrick Grünauer (pewa2303). I am from Austria. On sid-500 I write about Windows, Cisco and IT-Security in English and German. Have fun while reading!

Patrick Gruenauer
Follow SID-500 on WordPress.com