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