Compartilhe que você está se especializando

Há pouco tempo fizemos um post sobre como Mover arquivos locais para o SharePoint Online com o PowerShell, mas não falamos sobre como checar a conformidade de pasta de rede antes de migrar para o SharePoint Online, para ver se existe algum problema que irá impedir a cópia desses arquivos, tais como:

  • Paths muito longos;
  • Arquivos muito grandes;
  • Arquivos com caracteres especiais no nome (como &, #, %).

Vamos aqui colocar mais um script PowerShell, para que você possa localizar esses arquivos e tomar alguma ação antes de tentar mover sua pasta para o SharePoint.

Script PowerShell

Para executar, você precisará abrir o PowerShell como administrador e executar o código abaixo (ou coloque no PowerShell ISE, para adaptar conforme sua necessidade). Caso prefira, em nosso GitHub existe a versão mais atualizada desse código.

#Get local folder
$folderDialog = New-Object -ComObject Shell.Application
$folder = $folderDialog.BrowseForFolder(0, "Choose the folder to check", 0, 0)
$SourceFolder = $folder.Self.Path

#Listing local content
Write-Host "----- Listing the current content"
$items = Get-ChildItem $SourceFolder -Recurse -File
$MoreThan256 = $items | Where-object { $_.FullName.Length -gt 256 }
$BiggerThan250 = $items | Where-Object {$_.Length -gt 250MB}
$wildcardChars = '#*?%&/'
$escapedChars = [regex]::Escape($wildcardChars)
$fullpathWithWildcards = $items | Where-Object { $_.FullName -match "[$escapedChars]" }

#Listing the Files that need some correction
If ( ($MoreThan256).count -ge 1 ) {Write-Host "---- Paths with more then 256 caracteres -------------------------"}
$MoreThan256 | ForEach-Object { "$($_.FullName)`r`n" }
If ( ($BiggerThan250).count -ge 1 ) {Write-Host "---- Files with more then 250MB ---------------------------------"}
$BiggerThan250 | ForEach-Object { "$($_.FullName)`r`n" }
If ( ($fullpathWithWildcards).count -ge 1 ) {Write-Host "---- Paths with wildcards ------------------------------------"}
$fullpathWithWildcards | ForEach-Object { "$($_.FullName)`r`n" }

#($MoreThan256).Fullname | clip
#($BiggerThan250).Fullname | clip
#($fullpathWithWildcards).Fullname | clip

A saída na tela serão do conteúdo que você deverá ajustar antes de migrar esta pasta para o SharePoint online.

Fontes/Referências

NVLAN – Mover arquivos locais para o SharePoint Online com o PowerShell

Mais Informações

Esperamos ter te ajudado e estaremos sempre a disposição para mais informações.

Se você tem interesse em algum assunto específico, tem alguma dúvida, precisa de ajuda, ou quer sugerir um post, entre em contato conosco pelo e-mail equipe@nvlan.com.br.

NVLAN - Consultoria