O OneDrive for Business bloqueia nomes de arquivos e pastas que contenham caracteres específicos. Ao tentar sincronizar um arquivo com um caractere não suportado, o OneDrive exibe um X vermelho e o arquivo fica pendente. Isso acontece porque o Windows permite esses caracteres em nomes locais, mas o mecanismo de armazenamento em nuvem do OneDrive não os suporta. Este artigo explica quais caracteres são bloqueados, como encontrá-los em seus arquivos antes do upload e como renomear arquivos para evitar falhas de sincronização.
Principais Conclusões: Encontre e Remova Caracteres Não Suportados Antes da Sincronização do OneDrive
- Pesquisa no Explorer com operadores
~"ename:: Use pesquisas curinga para localizar arquivos contendo til, aspas e outros caracteres bloqueados. - Script PowerShell para detecção em massa: Execute um comando simples para listar todos os arquivos com caracteres não suportados em uma pasta e exportar os resultados para um arquivo de texto.
- Ícones de status de sincronização do OneDrive no Explorer: Verifique o ícone de X vermelho antes do upload para confirmar quais arquivos o OneDrive rejeitará.
Por que o OneDrive Bloqueia Certos Caracteres em Nomes de Arquivos e Pastas
O OneDrive for Business usa o backend de armazenamento do SharePoint Online. O SharePoint Online segue uma convenção de nomenclatura mais restrita que o Windows NTFS. Os caracteres permitidos em nomes de arquivos do Windows não são todos permitidos no SharePoint. Ao tentar sincronizar um arquivo com um caractere bloqueado, o mecanismo de sincronização do OneDrive não consegue criar o item correspondente na nuvem. O arquivo permanece na pasta local do OneDrive com um ícone de sobreposição de X vermelho, e o status de sincronização exibe “Sincronização pendente” ou “Não é possível fazer upload”. Os caracteres bloqueados incluem til (~), aspas ("), cerquilha (#), porcentagem (%), e comercial (&), asterisco (), dois pontos (:), menor que (<), maior que (>), interrogação (?), barra invertida (\) e barra normal (/). Além disso, nomes de arquivo não podem começar com ponto (.) nem conter espaços ou pontos finais. A lista completa está documentada nas restrições de nomenclatura de arquivos do SharePoint da Microsoft. Entender essa diferença entre Windows e OneDrive é o primeiro passo para evitar erros de upload.
Como Escanear Arquivos Locais em Busca de Caracteres Não Suportados Antes do Upload
Você pode detectar caracteres não suportados usando três métodos: Pesquisa do Explorer, PowerShell e uma verificação manual do status de sincronização do OneDrive. Cada método funciona melhor para diferentes quantidades de arquivos. Use o Explorer para uma verificação rápida em uma pasta pequena. Use o PowerShell para escanear centenas ou milhares de arquivos em lote. Use os ícones de status do OneDrive para verificar o resultado após o escaneamento.
Método 1: Pesquisa no Explorer com Caracteres Curinga
- Abra a pasta que você planeja enviar
Navegue até a pasta no Explorer. Não abra a pasta do OneDrive ainda se quiser escanear antes de mover os arquivos. - Clique na caixa de Pesquisa no canto superior direito
Digite~"e pressione Enter. Essa pesquisa encontra arquivos que contenham til, um dos caracteres bloqueados. Se nenhum resultado aparecer, a pasta está livre de tils. - Pesquise cada caractere bloqueado individualmente
Você não pode pesquisar todos os caracteres em uma única consulta. Repita a pesquisa para",#,%,&,:,<,>,?,\e/. Para o asterisco, use a pesquisaname:, mas saiba que o Explorer tratacomo curinga, então essa pesquisa não é confiável. Use o PowerShell para o asterisco. - Renomeie todos os arquivos encontrados com caracteres bloqueados
Clique com o botão direito no arquivo, selecione Renomear e substitua o caractere bloqueado por um hífen ou sublinhado. Por exemplo, altererelatorio#1.docxpararelatorio-1.docx.
Método 2: Script PowerShell para Listar Todos os Arquivos com Caracteres Não Suportados
- Abra o PowerShell como administrador
Pressione a tecla Windows, digite PowerShell, clique com o botão direito em Windows PowerShell e selecione Executar como administrador. - Navegue até a pasta que deseja escanear
Digitecd "C:\Caminho\Para\Sua\Pasta"e pressione Enter. Substitua o caminho pelo local real da sua pasta. - Execute o script de detecção
Copie e cole o comando a seguir e pressione Enter:Get-ChildItem -Recurse | Where-Object { $_.Name -match '[~"#%&:<>?\\/]' } | Select-Object FullName
Este script lista o caminho completo de cada arquivo e pasta cujo nome contenha algum dos caracteres bloqueados. A saída aparece na janela do PowerShell. - Exporte os resultados para um arquivo de texto para revisão mais fácil
Execute este comando para salvar a lista:Get-ChildItem -Recurse | Where-Object { $_.Name -match '[~"#%&:<>?\\/]' } | Select-Object FullName | Out-File -FilePath "C:\Temp\blocked_chars.txt"
Abra o arquivo de texto no Bloco de Notas para ver todos os arquivos sinalizados. Renomeie cada arquivo diretamente no Explorer.
Método 3: Verifique o Status de Sincronização do OneDrive Antes de Mover Arquivos
- Copie os arquivos para sua pasta do OneDrive
Se você já escaneou e renomeou os arquivos, copie-os para a pasta do OneDrive. Não os mova ainda se quiser verificar o status de sincronização. - Aguarde o OneDrive processar os arquivos
O OneDrive exibe um ícone de sincronização circular azul para arquivos que estão sendo enviados. Após alguns segundos, verifique a sobreposição do ícone do arquivo. - Procure pelo ícone de X vermelho
Um X vermelho significa que o arquivo falhou ao sincronizar. Clique com o botão direito no arquivo e selecione Ver problemas de sincronização. A central de atividades do OneDrive mostra a mensagem de erro exata, que geralmente inclui "O nome do arquivo contém caracteres inválidos." - Renomeie o arquivo diretamente na pasta do OneDrive
Clique com o botão direito no arquivo, selecione Renomear, remova o caractere bloqueado e pressione Enter. O OneDrive tenta automaticamente o upload novamente.
Erros Comuns ao Lidar com Caracteres Não Suportados
Usar o asterisco na pesquisa do Explorer
O Explorer trata o asterisco como curinga em consultas de pesquisa. Pesquisar por retorna todos os arquivos, não apenas aqueles que contêm um asterisco no nome. Use o método PowerShell para detectar arquivos com asterisco no nome.
Espaços e pontos finais
O Windows permite nomes de arquivo como notas.txt com um espaço no final ou notas..txt com um ponto final. O OneDrive remove espaços e pontos finais durante o upload, o que pode causar um conflito de sincronização se o mesmo arquivo já existir sem os caracteres finais. Para evitar isso, renomeie os arquivos removendo espaços e pontos finais antes de copiá-los para o OneDrive.
Ignorar nomes de pastas
O OneDrive bloqueia caracteres não suportados também em nomes de pastas. Se um nome de pasta contiver dois pontos ou e comercial, todos os arquivos dentro dessa pasta falham ao sincronizar. Execute o script PowerShell com a flag -Recurse para capturar também nomes de pastas.
Pesquisa do Explorer vs PowerShell vs Status do OneDrive: Qual Método de Detecção Usar
| Item | Pesquisa do Explorer | Script PowerShell | Status de Sincronização do OneDrive |
|---|---|---|---|
| Melhor para | Verificação rápida de uma única pasta com menos de 50 arquivos | Escaneamento em massa de milhares de arquivos em subpastas | Verificação final após os arquivos já estarem na pasta do OneDrive |
| Detecta todos os caracteres bloqueados | Não — asterisco não pode ser pesquisado de forma confiável | Sim — todos os caracteres no padrão regex são detectados | Sim — mas apenas após a tentativa de upload falhar |
| Requer instalação | Não | Não — PowerShell já vem instalado no Windows | Não |
| Formato de saída | Painel de resultados do Explorer | Arquivo de texto ou lista no console | Ícone de X vermelho e mensagem de erro na central de atividades |
| Tempo para concluir | 30 segundos por pesquisa de caractere | 2 a 5 segundos para 1000 arquivos | 10 a 30 segundos após a cópia do arquivo |
Use a Pesquisa do Explorer quando você tiver um número pequeno de arquivos e souber qual caractere procurar. Use o script PowerShell quando precisar de um escaneamento abrangente de uma estrutura de pastas grande. Use o status de sincronização do OneDrive apenas quando já tiver movido os arquivos e precisar confirmar o resultado. Combinar a detecção com PowerShell e uma etapa de renomeação antes de mover os arquivos evitará completamente erros de sincronização.