Autorun dla PowerShell

14

Utworzyłem niektóre aliasy ( doskey), zapisałem je w pliku i dodałem AutoRunwartość (wskazując ten plik) cmd.exena:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor

Chciałbym zrobić to samo z PowerShell . Czy jest jakaś wartość rejestru dla programu PowerShell, która wskazuje na polecenia, które będą uruchamiane przy każdym uruchomieniu programu PowerShell?

mkas
źródło
Nienawidzę używać doskey. Uważam, że umieszczenie tych aliasów w moim skrypcie (jako funkcji) działa lepiej.
djangofan,

Odpowiedzi:

29

Założyłbyś profil. Wszystkie polecenia w profilu są wykonywane przy każdym uruchomieniu sesji PowerShell. Istnieją różne profile dla użytkownika, komputera itp. Zgodnie z opisem w MSDN :

Zrozumienie profili

Możesz mieć cztery różne profile w Windows PowerShell. Profile są wymienione w kolejności ładowania. Najbardziej szczegółowe profile mają pierwszeństwo przed mniej szczegółowymi profilami, w których mają zastosowanie.

  • %windir%\system32\WindowsPowerShell\v1.0\profile.ps1
    Ten profil dotyczy wszystkich użytkowników i wszystkich powłok.

  • %windir%\system32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
    Ten profil dotyczy wszystkich użytkowników, ale tylko powłoki Microsoft.PowerShell.

  • %UserProfile%\My Documents\WindowsPowerShell\profile.ps1
    Ten profil dotyczy tylko bieżącego użytkownika, ale wpływa na wszystkie powłoki.

  • %UserProfile%\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    Ten profil dotyczy tylko bieżącego użytkownika i powłoki Microsoft.PowerShell.

Peter Hahndorf
źródło
4
notepad $profile
Knuckle-Dragger
2
jeśli nie masz profilu $, zobacz, jak go utworzyć tutaj: technet.microsoft.com/en-us/library/ff461033.aspx
Chris F Carroll