

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 構文での glob パターンの使用
<a name="syntax-glob"></a>

パイプラインのアーティファクトまたはソースロケーションで使用されるファイルまたはパスを指定する場合、アクションタイプに応じてアーティファクトを指定できます。例えば、S3 アクションでは S3 オブジェクトキーを指定します。

トリガーではフィルタを指定できます。glob パターンを使用してフィルタを指定できます。以下は例です。

構文が「glob」の場合、パスの文字列表現は正規表現に似た構文を持つ限定的なパターン言語を使用してマッチされます。例:
+  `*.java` は、.java で終わるファイル名を表すパスを指定します。
+ ` *.*` は、ドットを含むファイル名を指定します。
+  `*.{java,class}` は、.java または .class で終わるファイル名を指定します。
+  `foo.?` は、foo. で始まり 1 文字の拡張子の付いたファイル名を指定します。

glob パターンの解釈には以下の規則が使用されます。
+ ディレクトリ境界で 0 文字以上の名前要素を指定するには、`*` を使用します。
+  ディレクトリ境界をまたいで 0 文字以上の名前要素を指定するには、`**` を使用します。
+ 名前コンポーネントの 1 文字を指定するには、`?` を使用します。
+ 特殊文字として解釈される文字をエスケープするには、バックスラッシュ文字 (`\`) を使用します。
+ 文字セットから 1 文字を指定するには、`[ ]` を使用します。
+ ビルドまたはソースリポジトリの場所のルートにある 1 つのファイルを指定するには、`my-file.jar` を使用します。
+ サブディレクトリ内の 1 つのファイルを指定するには、`directory/my-file.jar` または `directory/subdirectory/my-file.jar` を使用します。
+ すべてのファイルを指定するには、`"**"` を使用します。glob パターン `**` は、任意の数のサブディレクトリにマッチすることを示します。
+ `directory` という名前のディレクトリ内のすべてのファイルとディレクトリを指定するには、`"directory/**"` を使用します。glob パターン `**` は、任意の数のサブディレクトリにマッチすることを示します。
+ `directory` という名前のディレクトリ内のすべてのファイルを指定するが、そのサブディレクトリを含めないようにするには、`"directory/*"` を使用します。
+  角括弧式内では、`*`、`?`、および `\` 文字は、文字通りの意味です。ハイフン (-) 文字は、角括弧内で最初の文字だった場合、または式を否定する `!` の次の文字だった場合は、文字通りの意味です。
+  中括弧 (`{ }`) は、グループ内のサブパターンがマッチする場合にグループがマッチするサブパターンのグループを囲みます。カンマ (`","`) 文字は、サブパターンを分割するために使用します。グループはネストできません。