Führen Sie das Powershell-Skript aus, wenn Sie Powershell öffnen

11

Ist es möglich, ein Powershell-Skript auszuführen, wenn Sie Powershell ausführen? Doppelklicken Sie wie in auf das Powershell-Symbol und öffnen Sie das Fenster. Gibt es irgendwo eine Art "Auto-Run" -Einstellung?

user9993
quelle

Antworten:

15

Es gibt ein PowerShell-Skript, das beim Start von ps ausgeführt wird, sofern vorhanden. Die Dateispezifikation für dieses Skript befindet sich in der Variablen $profile.

Mit PowerShell-Befehlen können Sie überprüfen, ob diese Skriptdatei vorhanden ist, sie erstellen, wenn dies nicht der Fall ist, und sie mit dem Editor bearbeiten. Hier ist die Anleitung .

Walter Mitty
quelle
6

Geben Sie den folgenden Befehl ein:

New-item –type file –force $profile

Eine Datei Microsoft.PowerShell_profile.ps1wird in C:\Users\<username>\Documents\WindowsPowerShell\PowerShell 5 und älter oder C:\Users\<username>\Documents\PowerShell\in PowerShell 6 Core erstellt (dieser Ordner wird automatisch erstellt).

Bearbeiten Sie dann diese Datei und Sie können personalisierte PowerShell-Funktionen hinzufügen oder Module oder Snap-Ins laden ...

Wenn Sie jetzt Ihre Powershell-Konsole ausführen, Microsoft.PowerShell_profile.ps1wird ausgelöst.

NP
quelle
1

Aktualisieren der Standardvariablen $ Profile Bearbeiten Sie die Standard-PS1-Datei (falls nicht vorhanden, erstellen Sie sie). Fügen Sie Ihr Skript zur PS1-Datei hinzu

user428240
quelle
1

Es gibt viele Möglichkeiten, dies zu tun. Ein einfacher Weg ist ein Profilskript in Ihrem Standard-Powershell-Home-Pfad.

  1. Navigieren Sie zu $env:UserProfile\Documents\WindowsPowerShell.
    In der Regel wird dies auf erweitert C:\Users\<username>\Documents\WindowsPowerShell.
    Erstellen Sie die Ordner, wenn sie nicht vorhanden sind.
  2. Erstellen Sie eine Datei mit dem Namen profile.ps1. Sie können Ihr Skript in diese Datei schreiben. Diese Datei wird jedes Mal ausgeführt, wenn Sie Powershell als Benutzer starten. Wenn Sie das Skript woanders haben, können Sie profile.ps1diese Skripte aufrufen.

Als Randnotiz sollte der Standardprofilname sein Microsoft.PowerShell_profile.ps1.
Funktioniert aber profile.ps1auch.

nehcsivart
quelle