The -Command
parameter is used to specify commands to be executed on launch. It supports multiple data inputs.
You can specify commands to executed on launch as a string. Multiple semicolon ;
-separated statements may be executed.
>PowerShell.exe -Command "(Get-Date).ToShortDateString()"
10.09.2016
>PowerShell.exe -Command "(Get-Date).ToShortDateString(); 'PowerShell is fun!'"
10.09.2016
PowerShell is fun!
The -Command
parameter also supports a scriptblock input (one or multiple statements wrapped in braces { #code }
. This only works when calling PowerShell.exe
from another Windows PowerShell-session.
PS > powershell.exe -Command {
"This can be useful, sometimes..."
(Get-Date).ToShortDateString()
}
This can be useful, sometimes...
10.09.2016
You can pass in commands from the standard input by using -Command -
. The standard input can come from echo
, reading a file, a legacy console application etc.
>echo "Hello World";"Greetings from PowerShell" | PowerShell.exe -NoProfile -Command -
Hello World
Greetings from PowerShell