Base de conhecimento

1000 perguntas frequentes, 500 tutoriais e vídeos explicativos. Aqui, você encontra apenas soluções!

Resolver um erro de e-mail ($ na senha)

Atualização 01/09/2026

Este guia detalha as regras específicas a serem seguidas ao usar uma senha que contenha o caractere “cifrão” $ para enviar um e-mail via SMTP Infomaniak em um script (PowerShell, Python, etc.).

 

Introdução

  • Se, ao enviar um e-mail via SMTP, receber uma mensagem de erro de autenticação (por exemplo, autenticação falhou, nome de usuário ou senha inválidos), mesmo que a senha esteja correta e funcione em um programa como o Outlook, o problema pode estar relacionado ao tratamento do caractere $ no seu script ou arquivo de configuração.
  • Para garantir a execução confiável dos seus scripts SMTP, é altamente recomendável evitar o uso de caracteres especiais com significado sintático, em particular $, nas senhas utilizadas nos scripts e arquivos de configuração.
  • O problema também pode ocorrer ao conectar-se aos bancos de dados.

 

Regras a serem seguidas

O caractere $ é um símbolo especial em muitas linguagens e ambientes. Quando usado em uma senha em um script ou arquivo de configuração, ele pode ser interpretado incorretamente como uma variável ou um caractere de controle.

A seguir, alguns casos comuns em que não se deve usar o caractere $ em uma senha:

  • PowerShell: o símbolo $ é usado para declarar variáveis. Uma senha que contenha $ pode causar erros de sintaxe ou ser truncada.
  • Bash / Shell (Linux): o símbolo $ também é um prefixo de variável. Ele pode acionar substituições inesperadas.
  • Ficheiros YAML (por exemplo, Home Assistant, GitHub Actions, Docker Compose): $ pode ser interpretado como uma variável de ambiente.
  • Ficheiros .env, .ini ou outros ficheiros de configuração: as ferramentas que lêem estes ficheiros podem tentar interpretar as variáveis.
  • Comandos ou URL com autenticação: uma senha que contenha o caractere $ pode ser codificada incorretamente ou gerar falha durante a análise.

 

Para corrigir ou evitar este tipo de erro:

  • Evite usar o caractere $ em senhas destinadas a serem usadas em scripts ou sistemas automatizados.
  • Se você precisar absolutamente usá-lo, sempre coloque a string da senha entre aspas corretamente, de acordo com a linguagem:
    • No PowerShell: use aspas simples 'senha$Teste', se possível.
    • No Python: certifique-se de que a string esteja entre aspas simples ou duplas, sem interpretação.
    • No Bash: escape o $ com uma barra invertida \$.

Esta seção de perguntas frequentes foi útil?