Autorun for PowerShell

14

6

I have created some aliases (doskey), saved them to a file and added AutoRun value (pointing that file) for cmd.exe at:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor

I would like to do the same with PowerShell. Is there any registry value for PowerShell which points to commands that will be run each time I start PowerShell?

mkas

Posted 2012-11-18T18:01:55.253

Reputation: 143

I hate using doskey. I find that just putting those aliases in my script (as function)s works better. – djangofan – 2013-08-15T15:58:36.573

Answers

29

You would set up a profile. All commands in the profile are executed every time you start a PowerShell session. There are different profiles for user, machine, etc. As described on MSDN:

Understanding the Profiles

You can have four different profiles in Windows PowerShell. The profiles are listed in load order. The most specific profiles have precedence over less specific profiles where they apply.

  • %windir%\system32\WindowsPowerShell\v1.0\profile.ps1
    This profile applies to all users and all shells.

  • %windir%\system32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
    This profile applies to all users, but only to the Microsoft.PowerShell shell.

  • %UserProfile%\My Documents\WindowsPowerShell\profile.ps1
    This profile applies only to the current user, but affects all shells.

  • %UserProfile%\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    This profile applies only to the current user and the Microsoft.PowerShell shell.

Peter Hahndorf

Posted 2012-11-18T18:01:55.253

Reputation: 10 677

2

if you have no $profile, see how to create one here: https://technet.microsoft.com/en-us/library/ff461033.aspx

– Chris F Carroll – 2015-05-25T16:04:27.427

4notepad $profile – Knuckle-Dragger – 2013-12-14T07:37:41.927