What are language modes within PowerShell?
A language mode in PowerShell determines which elements of PowerShell are allowed and can be used in a session. You can find out the language mode of the current session by running $ExecutionContext.SessionState.LanguageMode—of course, this only works if you are allowed to run this command:
Figure 10.1 – Querying the language mode
In the example shown in the screenshot, the Full Language mode is enabled in the current session.
There are four different language modes available, which we will explore a little bit deeper in the following sections.
Full Language (FullLanguage)
The Full Language mode is the default mode for PowerShell. Every command and all elements are allowed.
The only restrictions that a user may experience would be if they do not have the Windows privileges to run a command (such as administrative privileges), but this behavior is not restricted by language mode.