PowerShell
Командная строка PowerShell.exe
Поиск…
параметры
| параметр | Описание |
|---|---|
| -Помощь | -? | /? | Показывает помощь |
| -File <FilePath> [<Args>] | Путь к скрипт-файлу, который должен быть выполнен, и аргументы (необязательно) |
| -Command {- | <script-block> [-args <arg-array>] | <string> [<CommandParameters>]} | Команды, которые должны выполняться, а затем аргументы |
| -EncodedCommand <Base64EncodedCommand> | Закодированные команды Base64 |
| -ExecutionPolicy <ExecutionPolicy> | Устанавливает политику выполнения только для этого процесса |
| -InputFormat {Текст | XML} | Устанавливает формат ввода данных, отправленных для обработки. Текст (строки) или XML (сериализованный CLIXML) |
| -Mta | PowerShell 3.0+: запускает PowerShell в многопоточной квартире (STA по умолчанию) |
| -sta | PowerShell 2.0: запускает PowerShell в однопоточной квартире (по умолчанию MTA) |
| -Нет выхода | Удерживает консоль PowerShell после выполнения скрипта / команды |
| -nologo | Скрывает авторский знак на старте |
| -NonInteractive | Скрывает консоль от пользователя |
| -NoProfile | Избегайте загрузки профилей PowerShell для машины или пользователя |
| -OutputFormat {Текст | XML} | Устанавливает формат вывода для данных, возвращаемых с PowerShell. Текст (строки) или XML (сериализованный CLIXML) |
| -PSConsoleFile <FilePath> | Загружает предварительно созданный файл консоли, который настраивает среду (созданную с помощью Export-Console ) |
| -Version <версия Windows PowerShell> | Укажите версию PowerShell для запуска. В основном используется с 2.0 |
| -WindowStyle <style> | Указывает, следует ли запускать процесс PowerShell как normal , hidden , minimized или maximized окно. |
Выполнение команды
Параметр -Command используется для указания команд, которые будут выполняться при запуске. Он поддерживает несколько входов данных.
-Command <string>
Вы можете указать команды для запуска в качестве строки. Несколько точек с запятой ; - могут быть выполнены отдельные отчеты.
>PowerShell.exe -Command "(Get-Date).ToShortDateString()"
10.09.2016
>PowerShell.exe -Command "(Get-Date).ToShortDateString(); 'PowerShell is fun!'"
10.09.2016
PowerShell is fun!
-Command {scriptblock}
Параметр -Command также поддерживает ввод скриптового блока (одно или несколько операторов, заключенных в фигурные скобки { #code } . Это работает только при вызове PowerShell.exe из другого сеанса Windows PowerShell.
PS > powershell.exe -Command {
"This can be useful, sometimes..."
(Get-Date).ToShortDateString()
}
This can be useful, sometimes...
10.09.2016
-Command - (стандартный ввод)
Вы можете передавать команды со стандартного ввода с помощью -Command - . Стандартный ввод может поступать от echo , чтения файла, устаревшего консольного приложения и т. Д.
>echo "Hello World";"Greetings from PowerShell" | PowerShell.exe -NoProfile -Command -
Hello World
Greetings from PowerShell
Выполнение файла сценария
Вы можете указать файл для ps1 скрипта для запуска его содержимого при запуске с использованием параметра -File .
Основной скрипт
MyScript.ps1
(Get-Date).ToShortDateString()
"Hello World"
Выход:
>PowerShell.exe -File Desktop\MyScript.ps1
10.09.2016
Hello World
Использование параметров и аргументов
Вы можете добавлять параметры и / или аргументы после пути к файлу, чтобы использовать их в скрипте. Аргументы будут использоваться как значения для неопределенных / доступных параметров сценария, остальные будут доступны в $args -array
MyScript.ps1
param($Name)
"Hello $Name! Today's date it $((Get-Date).ToShortDateString())"
"First arg: $($args[0])"
Выход:
>PowerShell.exe -File Desktop\MyScript.ps1 -Name StackOverflow foo
Hello StackOverflow! Today's date it 10.09.2016
First arg: foo