O que é o formato de ficheiro PS1?
Um arquivo .ps1 é um script de texto simples escrito na linguagem de script PowerShell, desenvolvida pela Microsoft. O PowerShell foi lançado em novembro de 2006 com o Windows PowerShell 1.0 como um substituto moderno para os antigos scripts em lote .bat e .cmd, construído sobre um shell orientado a objetos executado no runtime .NET.
Os scripts contêm sequências de cmdlets, funções, variáveis e instruções de controle de fluxo. Um cabeçalho opcional #Requires no topo especifica uma versão mínima do PowerShell ou módulos necessários, e um bloco param() declara os parâmetros do script. No Windows, a execução é bloqueada por padrão - a ExecutionPolicy é definida como Restricted, portanto, um script não será executado até que a política seja relaxada com Set-ExecutionPolicy ou o arquivo seja iniciado via clique com o botão direito → Executar com o PowerShell.
Existem dois ramos ativos lado a lado:
- Windows PowerShell 5.1 - integrado ao Windows 10 e 11; o padrão é a codificação UTF-16 LE; não está mais em desenvolvimento ativo.
- PowerShell 7 (anteriormente PowerShell Core) - multiplataforma no Windows, macOS e Linux; o padrão é UTF-8 sem BOM; mantido ativamente.
Ambos os ramos leem arquivos .ps1 de forma idêntica. A assinatura de código Authenticode (via Set-AuthenticodeSignature) anexa um rodapé # SIG # Begin signature block ao arquivo; editar o arquivo posteriormente invalida a assinatura.
Segurança e proteção
RISCO: HIGHPS1 é o vetor número 1 de malware de script no Windows. O PowerShell pode baixar payloads, ignorar o UAC, desativar antivírus, criptografar arquivos (ransomware) e exfiltrar dados. A ExecutionPolicy padrão do Windows (Restricted) bloqueia a execução, mas invasores rotineiramente a contornam com -ExecutionPolicy Bypass ou codificando scripts em Base64 (-EncodedCommand). Sinais de alerta: scripts que executam Invoke-WebRequest/IEX (Invoke-Expression), desativam antivírus ou chegam como anexos de e-mail. Prática segura: sempre leia o script em um editor de texto antes de executar; use o PowerShell Script Block Logging (EventID 4104) em sistemas corporativos. Scripts assinados (Set-AuthenticodeSignature com um certificado confiável) são mais seguros, mas não imunes.
Detalhes do formato
em resumo- Arquivo Adobe PostScript Nível 1 (.ps) - Raro: alguns sistemas associam .ps1 a arquivos PostScript nível 1, distintos dos scripts PowerShell.
Programas que abrem arquivos PS1
Detalhes técnicos
especificação profunda| Codificação | UTF-16 LE (padrão do Windows PowerShell 5.1 / ISE) ou UTF-8 sem BOM (padrão do PowerShell 7) |
| Marca de ordem de byte (BOM) | UTF-16 LE BOM (FF FE) comum no ISE; PowerShell 7 omite o BOM por padrão |
| Contêiner | Texto simples; sem invólucro binário |
| Tipo MIME | application/x-powershell (também text/x-powershell e text/plain) |
| Estrutura do script | Cmdlets, funções, variáveis, controle de fluxo; blocos opcionais #Requires e param() |
| Política de execução | Bloqueada por padrão no Windows (Restricted); requer Set-ExecutionPolicy ou clique com o botão direito em Executar com o PowerShell |
| Assinatura de código | Authenticode via Set-AuthenticodeSignature; # SIG # Begin signature block anexado como rodapé de texto simples; editar o arquivo invalida a assinatura |
| Runtime | .NET Framework (Windows PowerShell 5.1); .NET 5+ (PowerShell 7) |
| Suporte multiplataforma | Windows, macOS, Linux - apenas PowerShell 7; Windows PowerShell 5.1 é exclusivo para Windows |
| Integração de módulos | Scripts podem carregar arquivos de módulo .psm1 (dot-source) e referenciar manifestos de módulo .psd1 |
| Diretiva de versão | #Requires -Version X.Y impõe a versão mínima do PowerShell; #Requires -Modules impõe a disponibilidade de módulos |
| Tamanho típico | 1 KB - 1 MB; a maioria dos scripts tem menos de 100 KB |
| Formatos de script relacionados | .psm1 (módulo), .psd1 (manifesto), .ps1xml (dados de tipo e formato) |
| Lançado | November 14, 2006 (Windows PowerShell 1.0) |
| Versão mais recente | PowerShell 7.5 (2025); format itself is plain text with no version field |
| Padrão aberto | Sim · livre de royalties |
| Especificação | learn.microsoft.com |
Conversões de PS1
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos PS1.