다음을 통해 공유


PowerShell을 사용하여 사용자 지정 모델 게시

적용 대상: ✓ 모든 사용자 지정 모델 | ✓ 미리 빌드된 모든 모델

중요

Microsoft Syntex PowerShell cmdlet 및 기타 모든 PnP 구성 요소는 지원되는 활성 커뮤니티에서 지원하는 오픈 소스 도구입니다. 공식 Microsoft 지원 채널의 오픈 소스 도구 지원에 대한 SLA는 없습니다.

Syntex 모델은 일반적으로 테넌트 전체의 문서 라이브러리에 배포됩니다. 이 작업은 콘텐츠 센터 사이트를 사용하여 수행할 수 있지만 이 문서에서 설명한 대로 PnP PowerShell 을 사용하여 수행할 수도 있습니다.

콘텐츠 센터에서 사용 가능한 모델 나열

현재 Syntex 콘텐츠 센터 사이트에 추가된 모델에 대한 개요를 보려면 Get-PnPSyntexModel cmdlet을 사용합니다.

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Get-PnPSyntexModel

라이브러리에 모델 적용

라이브러리에 모델을 적용하려면 Publish-PnPSyntexModel cmdlet을 사용합니다.

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Publish-PnPSyntexModel -Model "Contract Notice" -ListWebUrl "https://contoso.sharepoint.com/sites/finance" -List "Documents"

모델이 사용되는 위치 이해

여러 라이브러리에 모델을 배포한 후에는 모델을 사용하여 라이브러리 목록을 검토할 수 있습니다. 이 작업은 Get-PnPSyntexModelPublication cmdlet을 사용하여 수행할 수 있습니다.

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourContentCenter"
Get-PnPSyntexModelPublication -Identity "Contract Notice"

라이브러리에서 모델 제거

라이브러리에서 모델을 제거하는 것은 적용과 동일한 패턴을 따르며 Unpublish-PnPSyntexModel cmdlet을 대화형으로 또는 여러 작업의 일괄 처리로 사용하여 수행할 수 있습니다.

Connect-PnPOnline -Url "https://contoso.sharepoint.com/sites/yourSite"
Unpublish-PnPSyntexModel -Model "Invoice model" -ListWebUrl "https://contoso.sharepoint.com/sites/finance" -List "Documents"

대량으로 모델 적용

여러 모델을 여러 라이브러리에 게시하려면 모델 및 대상 위치를 나열하는 입력 CSV 파일을 만듭니다.

ModelName,TargetSiteUrl,TargetWebServerRelativeUrl,TargetLibraryServerRelativeUrl
Contract Notice,https://contoso.sharepoint.com/sites/Site1,/sites/Site1,/sites/site1/shared%20documents
Contract Notice,https://contoso.sharepoint.com/sites/Site1,/sites/Site1,/sites/site1/other
Trade Confirmation,https://contoso.sharepoint.com/sites/Site2,/sites/Site2,/sites/site2/shared%20documents

그런 다음 이 CSV 파일을 스크립트에 입력으로 사용하여 나열된 모델을 적절한 라이브러리에 게시할 수 있습니다. 다음 예제에서는 일괄 처리를 사용하여 요청의 효율성을 높입니다.

$contentCenterURL = "https://contoso.sharepoint.com/sites/yourSite"
$targetsCSV = "./Publish-SyntexModelBulk.csv"

Connect-PnPOnline -url $contentCenterURL

$targetLibraries = Import-Csv -Path $targetsCSV

$batch = New-PnPBatch

foreach ($target in $targetLibraries) {
    Publish-PnPSyntexModel -Model $target.ModelName -TargetSiteUrl $target.TargetSiteUrl -TargetWebServerRelativeUrl $target.TargetWebServerRelativeUrl -TargetLibraryServerRelativeUrl $target.TargetLibraryServerRelativeUrl -Batch $batch
}

Invoke-PnPBatch -Batch $batch