Share via


PowerShell@1 - PowerShell v1-taak

Voer een PowerShell-script uit.

Syntaxis

# PowerShell v1
# Run a PowerShell script.
- task: PowerShell@1
  inputs:
    scriptType: 'filePath' # 'inlineScript' | 'filePath'. Required. Type. Default: filePath.
    scriptName: # string. Required when scriptType = filePath. Script Path. 
    #arguments: # string. Arguments. 
    #inlineScript: # string. Required when scriptType = inlineScript. Inline Script. 
  # Advanced
    #workingFolder: # string. Working folder. 
    #failOnStandardError: true # boolean. Fail on Standard Error. Default: true.

Invoerwaarden

scriptType - Type
string. Vereist. Toegestane waarden: inlineScript (Inline Script), filePath (Bestandspad). Standaardwaarde: filePath.

Hiermee geeft u het type script op voor de taak die moet worden uitgevoerd: een inlinescript of een pad naar een .ps1 bestand.


scriptName - Scriptpad
string. Vereist wanneer scriptType = filePath.

Hiermee geeft u het type script op voor de taak die moet worden uitgevoerd: een inlinescript of een pad naar een .ps1 bestand.


arguments - Argumenten
string.

Hiermee geeft u de argumenten doorgegeven aan het PowerShell-script. Argumenten kunnen ordinale parameters of benoemde parameters zijn. Bijvoorbeeld -Name someName -Path -Value "Some long string value".

arguments wordt niet gebruikt wanneer targetType is ingesteld op inline.


workingFolder - Werkmap
string.

Hiermee geeft u de werkmap op waar het script wordt uitgevoerd. Als er geen waarde is opgegeven, is $(Build.SourcesDirectory)de werkmap .


inlineScript - Inlinescript
string. Vereist wanneer scriptType = inlineScript. Standaardwaarde: # You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host "Hello World".

Hiermee geeft u de inhoud van het script. De maximaal ondersteunde inlinescriptlengte is 500 tekens. Gebruik een script uit een bestand als u een langer script wilt gebruiken.


failOnStandardError - Fout bij standaardfout
boolean. Standaardwaarde: true.

Als de waarde van deze booleaanse waarde is, mislukt truede taak als er fouten naar de foutpijplijn worden geschreven of als er gegevens naar de stroom Standaardfouten worden geschreven. Anders is de taak afhankelijk van de afsluitcode om de fout te bepalen.


Opties voor taakbeheer

Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties voor besturingselementen en algemene taakeigenschappen voor meer informatie.

Uitvoervariabelen

Geen.

Opmerkingen

PowerShell@1 wordt alleen uitgevoerd op Windows-agents. Als u PowerShell wilt uitvoeren op andere agenttypen, gebruikt u PowerShell@2.

Elke PowerShell-sessie duurt alleen voor de duur van de taak waarin deze wordt uitgevoerd. Taken die afhankelijk zijn van wat is gebootstrapped, moeten zich in dezelfde taak bevinden als de bootstrap.

Een variabele instellen zodat deze kan worden gelezen door volgende scripts en taken

Zie Uw buildvariabelen in een script definiëren en wijzigen voor meer informatie over het definiëren van buildvariabelen in een script.

Zie Uw releasevariabelen in een script definiëren en wijzigen voor meer informatie over het definiëren van releasevariabelen in een script.

Pijplijngeheimen doorgeven in script, maar geheim wordt niet gemaskeerd in pijplijnlogboeken

Houd er rekening mee dat PowerShell foutberichten uitschakelt, dus als u pijplijngeheimen in een script gebruikt, kunnen de geheimen worden ingekort en weergegeven. Bijvoorbeeld in het onderstaande inlinescript:

./script.ps1 --arg1 value1 --arg2 <some_secret_which_will_be_masked_here>

Er kan een uitzondering zijn, zoals: At <path_to_temp_script_file>:4 char:3:

+   ./script.ps1 --arg1 value1 --arg2 <unmasked_part_of_original_secret> ...
+   ~~~~~~~~~~
    + <Additional exception details>

Om dit probleem te voorkomen, kunt u deze uitzonderingen op scriptniveau afhandelen of voorkomen dat pijplijngeheimen worden weergegeven in broncoderegels in foutberichten.

Vereisten

Vereiste Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
Eisen Zelf-hostende agents moeten mogelijkheden hebben die voldoen aan de volgende vereisten om taken uit te voeren die deze taak gebruiken: DotNetFramework
Functies Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak.
Opdrachtbeperkingen Alle
Instelbare variabelen Alle
Agentversie 1.102 of hoger
Taakcategorie Hulpprogramma

Zie ook