New-AzBatchTask
Создает задачу пакетной службы в задании.
Синтаксис
New-AzBatchTask
-JobId <String>
-Id <String>
[-DisplayName <String>]
-CommandLine <String>
[-ResourceFiles <PSResourceFile[]>]
[-EnvironmentSettings <IDictionary>]
[-AuthenticationTokenSettings <PSAuthenticationTokenSettings>]
[-UserIdentity <PSUserIdentity>]
[-AffinityInformation <PSAffinityInformation>]
[-Constraints <PSTaskConstraints>]
[-MultiInstanceSettings <PSMultiInstanceSettings>]
[-DependsOn <TaskDependencies>]
[-ApplicationPackageReferences <PSApplicationPackageReference[]>]
[-OutputFile <PSOutputFile[]>]
[-ExitConditions <PSExitConditions>]
[-ContainerSettings <PSTaskContainerSettings>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
New-AzBatchTask
-JobId <String>
[-Tasks <PSCloudTask[]>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
New-AzBatchTask
[-Job <PSCloudJob>]
[-Tasks <PSCloudTask[]>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
New-AzBatchTask
[-Job <PSCloudJob>]
-Id <String>
[-DisplayName <String>]
-CommandLine <String>
[-ResourceFiles <PSResourceFile[]>]
[-EnvironmentSettings <IDictionary>]
[-AuthenticationTokenSettings <PSAuthenticationTokenSettings>]
[-UserIdentity <PSUserIdentity>]
[-AffinityInformation <PSAffinityInformation>]
[-Constraints <PSTaskConstraints>]
[-MultiInstanceSettings <PSMultiInstanceSettings>]
[-DependsOn <TaskDependencies>]
[-ApplicationPackageReferences <PSApplicationPackageReference[]>]
[-OutputFile <PSOutputFile[]>]
[-ExitConditions <PSExitConditions>]
[-ContainerSettings <PSTaskContainerSettings>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Описание
Командлет
Примеры
Пример 1. Создание задачи пакетной службы
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context
Эта команда создает задачу с идентификатором Task23 в задании с идентификатором job-000001.
Задача выполняет указанную команду.
Используйте командлет get-AzBatchAccountKey
Пример 2. Создание задачи пакетной службы
$autoUser = New-Object Microsoft.Azure.Commands.Batch.Models.PSAutoUserSpecification -ArgumentList @("Task", "Admin")
$userIdentity = New-Object Microsoft.Azure.Commands.Batch.Models.PSUserIdentity $autoUser
Get-AzBatchJob -Id "Job-000001" -BatchContext $Context | New-AzBatchTask -Id "Task26" -CommandLine "cmd /c echo hello > newFile.txt" -UserIdentity $userIdentity -BatchContext $Context
Эта команда получает задание пакетной службы с идентификатором задания 000001 с помощью командлета Get-AzBatchJob. Команда передает это задание текущему командлету с помощью оператора конвейера. Команда создает задачу с идентификатором Task26 в этом задании. Задача выполняет указанную команду с помощью повышенных разрешений.
Пример 3. Добавление коллекции задач в указанное задание с помощью конвейера
$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
$Task01 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task23", "cmd /c dir /s")
$Task02 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task24", "cmd /c dir /s")
Get-AzBatchJob -Id "Job-000001" -BatchContext $Context | New-AzBatchTask -Tasks @($Task01, $Task02) -BatchContext $Context
Первая команда создает ссылку на объект для ключей учетной записи пакетной службы с именем ContosoBatchAccount с помощью Get-AzBatchAccountKey. Команда сохраняет ссылку на этот объект в переменной $Context. Следующие две команды создают объекты PSCloudTask с помощью командлета New-Object. Команды хранят задачи в переменных $Task 01 и $Task 02. Последняя команда получает пакетное задание с идентификатором job-000001 с помощью Get-AzBatchJob. Затем команда передает это задание текущему командлету с помощью оператора конвейера. Команда добавляет коллекцию задач в этом задании. Команда использует контекст, хранящийся в $Context.
Пример 4. Добавление коллекции задач в указанное задание
$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
$Task01 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task23", "cmd /c dir /s")
$Task02 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task24", "cmd /c dir /s")
New-AzBatchTask -JobId "Job-000001" -Tasks @($Task01, $Task02) -BatchContext $Context
Первая команда создает ссылку на объект для ключей учетной записи пакетной службы с именем ContosoBatchAccount с помощью Get-AzBatchAccountKey. Команда сохраняет ссылку на этот объект в переменной $Context. Следующие две команды создают объекты PSCloudTask с помощью командлета New-Object. Команды хранят задачи в переменных $Task 01 и $Task 02. Последняя команда добавляет задачи, хранящиеся в $Task 01 и $Task 02 в задании с идентификатором job-000001.
Пример 5. Добавление задачи с выходными файлами
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context
$blobContainerDestination = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileBlobContainerDestination "https://myaccount.blob.core.windows.net/sascontainer?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D"
$destination = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileDestination $blobContainerDestination
$uploadOptions = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileUploadOptions "TaskSuccess"
$outputFile = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFile "*.txt", $blobContainerDestination, $uploadOptions
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -OutputFile $outputFile -BatchContext $Context
Пример 6. Добавление задачи с параметрами маркера проверки подлинности
$authSettings = New-Object Microsoft.Azure.Commands.Batch.Models.PSAuthenticationTokenSettings
$authSettings.Access = "Job"
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -AuthenticationTokenSettings $authSettings -BatchContext $Context
Пример 7. Добавление задачи, которая выполняется в контейнере
$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -ContainerSettings (New-Object Microsoft.Azure.Commands.Batch.Models.PSTaskContainerSettings "containerImageName") -BatchContext $Context
Параметры
-AffinityInformation
Указывает указание локальности, которое служба пакетной службы использует для выбора узла, на котором выполняется задача.
Тип: | PSAffinityInformation |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ApplicationPackageReferences
Тип: | PSApplicationPackageReference[] |
Aliases: | ApplicationPackageReference |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-AuthenticationTokenSettings
Параметры маркера проверки подлинности, который задача может использовать для выполнения операций пакетной службы. Если это задано, пакетная служба предоставляет задачу маркером проверки подлинности, который можно использовать для проверки подлинности операций пакетной службы, не требуя ключа доступа к учетной записи. Маркер предоставляется с помощью переменной среды AZ_BATCH_AUTHENTICATION_TOKEN. Операции, которые задача может выполнять с помощью маркера, зависят от параметров. Например, задача может запрашивать разрешения задания, чтобы добавить другие задачи в задание, или проверить состояние задания или других задач.
Тип: | PSAuthenticationTokenSettings |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-BatchContext
Указывает экземпляр BatchAccountContext, используемый этим командлетом для взаимодействия со службой пакетной службы. Если вы используете командлет Get-AzBatchAccount для получения batchAccountContext, при взаимодействии со службой пакетной службы будет использоваться проверка подлинности Microsoft Entra. Чтобы использовать проверку подлинности с общим ключом, используйте командлет Get-AzBatchAccountKey, чтобы получить объект BatchAccountContext с заполненными ключами доступа. При использовании проверки подлинности общего ключа первичный ключ доступа используется по умолчанию. Чтобы изменить используемый ключ, задайте свойство BatchAccountContext.KeyInUse.
Тип: | BatchAccountContext |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-CommandLine
Указывает командную строку для задачи.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Constraints
Указывает ограничения выполнения, которые применяются к этой задаче.
Тип: | PSTaskConstraints |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ContainerSettings
Параметры контейнера, в котором выполняется задача. Если пул, который будет запускать эту задачу, имеет набор containerConfiguration, это также должно быть установлено. Если пул, который будет выполнять эту задачу, не имеет набора containerConfiguration, это не должно быть задано. При указании все каталоги рекурсивно под AZ_BATCH_NODE_ROOT_DIR (корнем каталогов пакетной службы Azure на узле) сопоставляются с контейнером, все переменные среды задач сопоставляются с контейнером, а командная строка задачи выполняется в контейнере.
Тип: | PSTaskContainerSettings |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DefaultProfile
Учетные данные, учетная запись, клиент и подписка, используемые для обмена данными с Azure.
Тип: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DependsOn
Указывает, что задача зависит от других задач. Задача не будет запланирована до тех пор, пока все задачи, зависящие от них успешно завершены.
Тип: | TaskDependencies |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DisplayName
Указывает отображаемое имя задачи.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-EnvironmentSettings
Указывает параметры среды в виде пар "ключ-значение", которые этот командлет добавляет в задачу. Ключ — это имя параметра среды. Значением является параметр среды.
Тип: | IDictionary |
Aliases: | EnvironmentSetting |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ExitConditions
Тип: | PSExitConditions |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Id
Указывает идентификатор задачи.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Job
Указывает задание, в котором этот командлет создает задачу.
Чтобы получить объект PSCloudJob
Тип: | PSCloudJob |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-JobId
Указывает идентификатор задания, в котором этот командлет создает задачу.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-MultiInstanceSettings
Указывает сведения о выполнении задачи с несколькими экземплярами.
Тип: | PSMultiInstanceSettings |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-OutputFile
Возвращает или задает список файлов, которые служба пакетной службы отправит из вычислительного узла после выполнения командной строки. Для задач с несколькими экземплярами файлы будут отправляться только с вычислительного узла, на котором выполняется основная задача.
Тип: | PSOutputFile[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ResourceFiles
Указывает файлы ресурсов в виде пар "ключ-значение", необходимых задаче. Ключ — это путь к файлу ресурсов. Значением является источник BLOB-объекта файла ресурсов.
Тип: | PSResourceFile[] |
Aliases: | ResourceFile |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Tasks
Указывает коллекцию добавляемых задач. Каждая задача должна иметь уникальный идентификатор.
Тип: | PSCloudTask[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-UserIdentity
Удостоверение пользователя, под которым выполняется задача.
Тип: | PSUserIdentity |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Выходные данные
Связанные ссылки
Azure PowerShell