次の方法で共有


ExtractFiles@1 - ファイル v1 タスクの抽出

このタスクを使用して、.7z、.rar、.tar.gz、.zipなど、さまざまなアーカイブ ファイルと圧縮ファイルを抽出します。

構文

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

入力

archiveFilePatterns - アーカイブ ファイル パターン
string. 必須。 既定値: **/*.zip.

抽出するアーカイブ ファイルのファイル パスまたはパターンを指定します。 複数行のミニマッチ パターンをサポートします。 ファイルの抽出タスクの の詳細を確認します。

抽出するアーカイブに一致するパターンを指定します。 既定では、パターンはリポジトリのルート フォルダーから開始されます ($(Build.SourcesDirectory)指定した場合と同じです。
抽出するアーカイブに一致するパターン フィルターを 1 行に 1 つずつ指定します。 次に例を示します。

  • test.zip ルート フォルダー内の test.zip ファイルを抽出します。
  • test/*.zip は、テスト フォルダー内のすべての .zip ファイルを抽出します。
  • **/*.tar は、ルート フォルダーとサブフォルダー内のすべての.tar ファイルを抽出します。
  • **/bin/*.7z は、"bin" という名前のサブフォルダー内のすべての.7z ファイルを抽出します。

このパターンは、フォルダー パスではなくアーカイブ ファイル パスのみを照合するために使用され、抽出するアーカイブ コンテンツは一致しません。 そのため、**/bin/**ではなく、**/bin などのパターンを指定する必要があります。

他のパス (パイプライン成果物など) からファイルを抽出するには、コピー タスク を使用して、抽出するファイルをリポジトリのルート フォルダー $(Build.SourcesDirectory) にコピーします。 たとえば、パイプライン成果物をコピーするには、ファイルを $(Pipeline.Workspace) から $(Build.SourcesDirectory) に移動し、ルート フォルダーまたはそのサブフォルダーから抽出します。


archiveFilePatterns - アーカイブ ファイル パターン
string. 必須。 既定値: *.zip.

抽出するアーカイブ ファイルのファイル パスまたはパターンを指定します。 複数行のミニマッチ パターンをサポートします。 ファイルの抽出タスクの の詳細を確認します。

他のパス (パイプライン成果物など) からファイルを抽出するには、コピー タスク を使用して、抽出するファイルをリポジトリのルート フォルダー $(Build.SourcesDirectory) にコピーします。 たとえば、パイプライン成果物をコピーするには、ファイルを $(Pipeline.Workspace) から $(Build.SourcesDirectory) に移動し、ルート フォルダーまたはそのサブフォルダーから抽出します。


宛先フォルダーdestinationFolder -
string. 必須。

アーカイブ ファイルの展開先フォルダーを指定します。 ファイル リポジトリにない場合は、 変数を使用します。 (例: $(agent.builddirectory))。


を抽出する前に、コピー先フォルダーをクリーンアップ cleanDestinationFolder -
boolean. 既定値: true.

アーカイブ の内容を抽出する前に、コピー先ディレクトリのコンテンツ全体を削除する (クリーン) オプションを指定します。


overwriteExistingFiles - 既存のファイル を上書きする
boolean. 既定値: false.

コピー先ディレクトリ内の既存のファイルが既に存在する場合に上書きするオプションを指定します。 オプションが falseされている場合、スクリプトは既存のファイルを上書きするかどうかを確認するプロンプトを表示します。


pathToSevenZipTool - 7z ユーティリティへのパス
string.

7z ユーティリティへのカスタム パスを指定します。 たとえば、Windows で C:\7z\7z.exe し、MacOS/Ubuntu で /usr/local/bin/7z します。 Windows で指定されていない場合は、タスクに付属する既定の 7zip バージョンが使用されます。


タスク コントロールのオプション

すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「コントロール オプションと一般的なタスク プロパティを参照してください。

出力変数

なし。

注釈

このタスクを使用して、一致パターンを使用してアーカイブからターゲット フォルダーにファイルを抽出します。 .zip、.jar、.war、.ear、.tar、.7zなど、さまざまな標準的なアーカイブ形式がサポートされています。

ファイルマッチングパターンの詳細については、「ファイルマッチングパターンリファレンスを参照してください。

例示

すべての .zip ファイルを再帰的に抽出する

この例では、ルート ファイルとサブフォルダーのファイルの両方を含め、すべての .zip ファイルを再帰的に抽出します。

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

サブフォルダーからすべての .zip ファイルを抽出する

この例では、test/one.ziptest/two.zipを抽出しますが、test/nested/three.zipのままにします。

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

必要条件

要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
実行日 エージェント、DeploymentGroup
の需要 なし
機能の このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。
コマンドの制限 このタスクは、次の コマンド制限: restricted を使用して実行されます。
設定可能な変数 このタスクには、次の変数 設定アクセス許可があります。変数の設定は無効です
エージェントのバージョン 2.182.1 以上
タスク カテゴリ 効用
要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
実行日 エージェント、DeploymentGroup
の需要 なし
機能の このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。
コマンドの制限 どれでも
設定可能な変数 どれでも
エージェントのバージョン サポートされているすべてのエージェント バージョン。
タスク カテゴリ 効用

こちらもご覧ください