ExtractFiles@1 - Bestanden extraheren v1-taak

Gebruik deze taak om verschillende archief- en compressiebestanden te extraheren, zoals .7z, .rar, .tar.gz en .zip.

Syntaxis

# Extract files v1
# Extract a variety of archive and compression files such as .7z, .rar, .tar.gz, and .zip.
- task: ExtractFiles@1
  inputs:
    archiveFilePatterns: '**/*.zip' # string. Required. Archive file patterns. Default: **/*.zip.
    destinationFolder: # string. Required. Destination folder. 
    #cleanDestinationFolder: true # boolean. Clean destination folder before extracting. Default: true.
    #overwriteExistingFiles: false # boolean. Overwrite existing files. Default: false.
    #pathToSevenZipTool: # string. Path to 7z utility.

Invoer

archiveFilePatterns - bestandspatronen archiveren
string. Verplicht. Standaardwaarde: **/*.zip.

Hiermee geeft u de bestandspaden of patronen van de archiefbestanden op die moeten worden geëxtraheerd. Ondersteunt meerdere regels met minimatchpatronen. Meer informatie over de Bestandstaak extraheren.

Hiermee geeft u de patronen die overeenkomen met de archieven die u wilt extraheren. Patronen worden standaard gestart in de hoofdmap van de opslagplaats (hetzelfde als als als u $(Build.SourcesDirectory)hebt opgegeven.
Hiermee geeft u de patroonfilters, één per regel, die overeenkomen met de archieven die moeten worden geëxtraheerd. Voorbeeld:

  • test.zip extraheert het test.zip bestand in de hoofdmap.
  • test/*.zip alle .zip bestanden in de testmap extraheert.
  • **/*.tar extraheert alle .tar bestanden in de hoofdmap en submappen.
  • **/bin/*.7z extraheert alle .7z bestanden in een submap met de naam 'bin'.

Het patroon wordt gebruikt om alleen archiefbestandspaden, geen mappaden en niet archiefinhoud te vinden die moet worden geëxtraheerd. U moet dus patronen opgeven, zoals **/bin/** in plaats van **/bin.

Als u bestanden wilt extraheren uit andere paden (bijvoorbeeld een pijplijnartefact), gebruikt u de taak Kopiëren om het bestand te kopiëren dat u wilt extraheren naar de hoofdmap van uw opslagplaats: $(Build.SourcesDirectory). Als u bijvoorbeeld een pijplijnartefact wilt kopiëren, verplaatst u het bestand van $(Pipeline.Workspace) naar $(Build.SourcesDirectory) en extraheert u het uit de hoofdmap of de bijbehorende submappen.


destinationFolder - doelmap
string. Verplicht.

Hiermee geeft u de doelmap waarin archiefbestanden moeten worden geëxtraheerd. Gebruik variabelen als bestanden zich niet in de opslagplaats bevinden. Voorbeeld: $(agent.builddirectory).


cleanDestinationFolder - doelmap opschonen voordat u extraheert
boolean. Standaardwaarde: true.

Hiermee geeft u de optie om de volledige inhoud van de doelmap (schoon) te verwijderen voordat de archiefinhoud erin wordt geëxtraheerd.


bestaande bestandenoverwriteExistingFiles - overschrijven
boolean. Standaardwaarde: false.

Hiermee geeft u de optie voor het overschrijven van bestaande bestanden in de doelmap als deze al bestaan. Als de optie is false, vraagt het script om bestaande bestanden, waarin u wordt gevraagd of u deze wilt overschrijven.


pathToSevenZipTool - pad naar het hulpprogramma 7z
string.

Hiermee geeft u het aangepaste pad naar 7z hulpprogramma. Bijvoorbeeld C:\7z\7z.exe in Windows en /usr/local/bin/7z op MacOS/Ubuntu. Als deze niet is opgegeven in Windows, wordt de standaardversie van 7zip die bij een taak wordt geleverd, gebruikt.


Opties voor taakbeheer

Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties en algemene taakeigenschappenvoor meer informatie.

Uitvoervariabelen

Geen.

Opmerkingen

Gebruik deze taak om bestanden uit archieven te extraheren naar een doelmap met behulp van overeenkomende patronen. Een reeks standaardarchiefindelingen wordt ondersteund, waaronder .zip, .jar, .war, .ear, .tar, .7z en meer.

Zie de Bestandskoppelingspatronenvoor meer informatie over patronen voor bestandskoppeling.

Voorbeelden

Alle .zip bestanden recursief extraheren

In dit voorbeeld worden alle .zip bestanden recursief geëxtraheerd, inclusief zowel hoofdbestanden als bestanden uit submappen.

steps:
- task: ExtractFiles@1
  inputs:
    archiveFilePatterns: '**/*.zip'
    cleanDestinationFolder: true
    overwriteExistingFiles: false

Alle .zip bestanden uit de submap extraheren

In dit voorbeeld worden test/one.zip en test/two.zipgeëxtraheerd, maar blijft test/nested/three.zip.

steps:
- task: ExtractFiles@1
  inputs:
    archiveFilePatterns: 'test/*.zip'
    cleanDestinationFolder: true
    overwriteExistingFiles: false

Vereisten

Voorwaarde Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
eisen Geen
mogelijkheden Deze taak voldoet niet aan de vereisten voor volgende taken in de taak.
opdrachtbeperkingen Deze taak wordt uitgevoerd met behulp van de volgende opdrachtbeperkingen: beperkt
variabelen instellen Deze taak is gemachtigd om de volgende variabelen in te stellen : Variabelen instellen is uitgeschakeld
Agentversie 2.182.1 of hoger
Taakcategorie Nutsvoorzieningen

Zie ook