メインコンテンツにスキップ

PowerShell のワイルドカードを使って似た名前のオブジェクトをコピーする

注: PowerShellとの連携には、ShareGate MigrateのProまたはEnterpriseサブスクリプションが必要です。Essentialsプランでは利用できません。

ワイルドカード文字を使うと、スクリプト内で似た名前の要素を選択できます。たとえば、PowerShell のワイルドカードを使用すると、同じ単語や文字列で始まる、または終わる名前を持つすべてのオブジェクト(リスト、サブサイト、用語セットなど)をコピーできます。

詳細

ワイルドカードは、-Name パラメーターと一緒に使用できます。-Name は通常、Copy-SiteCopy-ListGet-TermSet などの構造系コマンドで使用されます。

* 記号を使うと、特定の文字列で始まる、または終わるすべてのサイト オブジェクトを取得する値を作成できます。

文字列の先頭に * を入力すると、その文字列で終わる名前を持つすべてのオブジェクトを取得できます。

文字列の末尾に * を入力すると、その文字列で始まる名前を持つすべてのオブジェクトを取得できます。

注: ワイルドカードのサポートは、-Name パラメーターと -ID パラメーターを使用するコマンドに限られます。たとえば、Copy-Site-Name を使用できることは、Copy Site の記事のパラメーター セクションで確認できます。

同じ文字列で始まる名前を持つサブサイトをコピーする

# Connect to the destination site
$dstSite = Connect-Site -Url "http://myfarm2010/sites/yoursite"

# Connect to the source site
$srcSite = Connect-Site -Url "http://myfarm2013/sites/yoursite"

# Copy sites from the source to the destination with a wildcard for site names starting with "Product"
Copy-Site -Name "Product*" -SourceSite $srcSite -DestinationSite $dstSite

この例では、yoursite サイト コレクションのサブサイトのうち、名前が Product で始まるものをすべてコピーします。つまり、Product AProduct BProduct C のような名前のサブサイトが移行されます。

同じ文字列で終わる名前を持つリストをコピーする

# Connect to the source site
$srcSite = Connect-Site -Url "http://myfarm2010/sites/yoursite"

# Connect to the destination site
$dstSite = Connect-Site -Url "http://myfarm2013/sites/yoursite"

# Copy lists from the source site to the destination site
# using a wildcard to match list names ending with "Contracts"
Copy-List -SourceSite $srcSite -Name "*Contracts" -DestinationSite $dstSite

この例では、yoursite サイトのリストのうち、名前が Contracts で終わるものをすべてコピーします。つまり、Product A ContractsProduct B ContractsProduct C Contracts のような名前のリストが移行されます。

この記事はAIによって翻訳されています。ご不明な点がある場合は、英語の原文をご確認ください。

こちらの回答で解決しましたか?