Udostępnij za pośrednictwem


ExtractFiles@1 — wyodrębnianie plików w wersji 1 — zadanie

To zadanie służy do wyodrębniania różnych plików archiwum i kompresji, takich jak .7z, .rar, .tar.gz i .zip.

Składnia

# 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.
# 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.
# 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.

Dane wejściowe

wzorce plików archiwum archiveFilePatterns -
string. To jest wymagane. Wartość domyślna: **/*.zip.

Określa ścieżki plików lub wzorce plików archiwum do wyodrębnienia. Obsługuje wiele linii wzorców minimatch. Dowiedz się więcej o zadaniu wyodrębniania plików .

Określa wzorce, które mają być zgodne z archiwami, które chcesz wyodrębnić. Domyślnie wzorce zaczynają się w folderze głównym repozytorium (tak samo jak w przypadku określenia $(Build.SourcesDirectory).
Określa filtry wzorców, po jednym na wiersz, które pasują do archiwów do wyodrębnienia. Na przykład:

  • test.zip wyodrębnia plik test.zip w folderze głównym.
  • test/*.zip wyodrębnia wszystkie pliki .zip w folderze testowym.
  • **/*.tar wyodrębnia wszystkie pliki .tar w folderze głównym i podfolderach.
  • **/bin/*.7z wyodrębnia wszystkie pliki .7z w dowolnym podfolderze o nazwie "bin".

Wzorzec służy do dopasowywania tylko ścieżek plików archiwum, a nie ścieżek folderów, a nie do wyodrębniania zawartości archiwum. Dlatego należy określić wzorce, takie jak **/bin/** zamiast **/bin.

Aby wyodrębnić pliki z innych ścieżek (np. artefakt potoku), użyj zadania kopiowania, aby skopiować plik, który chcesz wyodrębnić do folderu głównego repozytorium: $(Build.SourcesDirectory). Na przykład, aby skopiować artefakt potoku, przenieś plik z $(Pipeline.Workspace) do $(Build.SourcesDirectory), a następnie wyodrębnij go z folderu głównego lub jego podfolderów.


wzorce plików archiwum archiveFilePatterns -
string. To jest wymagane. Wartość domyślna: *.zip.

Określa ścieżki plików lub wzorce plików archiwum do wyodrębnienia. Obsługuje wiele linii wzorców minimatch. Dowiedz się więcej o zadaniu wyodrębniania plików .

Aby wyodrębnić pliki z innych ścieżek (np. artefakt potoku), użyj zadania kopiowania, aby skopiować plik, który chcesz wyodrębnić do folderu głównego repozytorium: $(Build.SourcesDirectory). Na przykład, aby skopiować artefakt potoku, przenieś plik z $(Pipeline.Workspace) do $(Build.SourcesDirectory), a następnie wyodrębnij go z folderu głównego lub jego podfolderów.


destinationFolder - folder docelowy
string. To jest wymagane.

Określa folder docelowy, do którego mają zostać wyodrębnione pliki archiwum. Użyj zmiennych , jeśli pliki nie znajdują się w repozytorium. Na przykład: $(agent.builddirectory).


cleanDestinationFolder - Wyczyść folder docelowy przed wyodrębnieniem
boolean. Wartość domyślna: true.

Określa opcję usunięcia całej zawartości katalogu docelowego (czyste) przed wyodrębnienie do niego zawartości archiwum.


overwriteExistingFiles - zastępowanie istniejących plików
boolean. Wartość domyślna: false.

Określa opcję zastąpienia istniejących plików w katalogu docelowym, jeśli już istnieją. Jeśli opcja jest false, skrypt monituje o istniejące pliki, pytając, czy chcesz je zastąpić.


pathToSevenZipTool - ścieżka do narzędzia 7z
string.

Określa niestandardową ścieżkę do narzędzia 7z. Na przykład C:\7z\7z.exe w systemie Windows i /usr/local/bin/7z w systemie MacOS/Ubuntu. Jeśli nie zostanie określony w systemie Windows, zostanie użyta domyślna wersja 7zip dostarczona z zadaniem.


Opcje sterowania zadaniami

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.

Zmienne wyjściowe

Żaden.

Uwagi

To zadanie służy do wyodrębniania plików z archiwów do folderu docelowego przy użyciu wzorców dopasowania. Obsługiwany jest szereg standardowych formatów archiwum, w tym .zip, .jar, war, .ear, .tar, .7z i nie tylko.

Aby uzyskać więcej informacji na temat wzorców dopasowywania plików, zobacz Odwołania do wzorców dopasowywania plików.

Przykłady

Wyodrębnianie wszystkich plików .zip rekursywnie

W tym przykładzie zostaną wyodrębnione wszystkie pliki .zip cyklicznie, w tym pliki główne i pliki z podfolderów.

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

Wyodrębnianie wszystkich plików .zip z podfolderu

W tym przykładzie wyodrębnisz test/one.zip i test/two.zip, ale pozostawi test/nested/three.zip.

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

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń To zadanie jest uruchamiane przy użyciu następujących ograniczeń poleceń : ograniczone
zmienne ustawiane To zadanie ma uprawnienia do ustawić następujące zmienne: Ustawienie zmiennych jest wyłączone
Wersja agenta 2.182.1 lub nowsza
Kategoria zadań Użyteczność
Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta Wszystkie obsługiwane wersje agentów.
Kategoria zadań Użyteczność

Zobacz też