Command Precedence in Powershell
PowerShell uses the following precedence rules when it runs commands for all items loaded in the current session:
Powershell decides what to run based on this order of precedence:
AliasFunctionCmdlet- External executables, on Windows in this order:
.com.exe.bat.cmd
THEREFORE, if you type 'doit' at a prompt in powershell, it will look for:
- An
aliascalleddoit - A function,
doit - A cmdLet called
doit - An exectuable on the PATH called
doit.com - An exectuable on the PATH called
doit.exe - An batch file on the PATH called
doit.bat - An batch file on the PATH called
doit.cmd
...and it will stop looking and run the first one it finds.