Since people are curious Ill explain why:
I need to build our project from the remote repo using a PowerShell script (.ps1). I’m using Bash in the VSCode terminal, I have to run the .ps1 script in a new Command Prompt because the compilation takes around 5 minutes and I need my terminal for other things. To do this, the only way is to run a batch file that executes the .ps1 script.
Its an automation so I dont need to touch powershell whatsover and remain in bash terminal. Instead of opening several windows, I automated all so it only takes 1 alias to compile my shit.
The compilation also requires several inputs and “Key Presses”, so I automated all of that in the Batch file.
That doesn’t make any sense. Why not just use PowerShell directly then? Why use Bash or even command line and a batch file? It sounds to me like you’re over-complicating things for nothing and putting the blame on Microsoft for some reason.
I’m a heavy Bash user myself and often find myself struggling a bit with PowerShell trying to look for equivalent commands. (commandlets?) But, the more I use it, the more I understand how it works and the more I improve my skills at using it.
I know a lot of people like to shit on Microsoft, but seriously give their PowerShell a chance. It has its strengths. It’s especially nice with Oh My Posh running in Windows Terminal.
Since you added a question mark, commands is the correct general term. However there are two types that can be a command. Functions: which are written in pure powershell and cmdlets: which are commands provided by dotnet classes. (Also exes and a bunch of other stuff common to other shells can be a command, but that’s not important.)
The reason they have different names is early on functions didn’t support some of the features available to cmdlets, such as pipeline input. There was later a way to add this support to functions.
In practice call them any of the 3 and people will know that you mean.