O parâmetro -File é usado com o executável powershell.exe ou pwsh.exe (PowerShell Core) para executar scripts externos. Ele é especialmente útil em ambientes automatizados, como tarefas agendadas, scripts em lote (.bat) ou integração com outras ferramentas.
🧾 Sintaxe Básica
powershell.exe -File "C:\Scripts\meuscript.ps1"
- O caminho pode ser absoluto ou relativo.
- O script deve ter a extensão
.ps1. - O PowerShell executa o script como se você o tivesse digitado linha por linha.
🧪 Exemplo com Argumentos
Se o script aceita parâmetros, você pode passá-los após o caminho:
powershell.exe -File "C:\Scripts\meuscript.ps1" -Nome "Antonio" -Idade 35
Dentro do script, você pode capturar os parâmetros com:
param (
[string]$Nome,
[int]$Idade
)
Write-Host "Olá, $Nome! Você tem $Idade anos."
🔐 Política de Execução
Por padrão, o Windows pode bloquear a execução de scripts. Para permitir:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Ou use o parâmetro -ExecutionPolicy junto com -File:
powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\meuscript.ps1"
🧱 Integração com Arquivos .bat
Você pode chamar scripts PowerShell dentro de arquivos em lote:
@echo off
powershell.exe -File "C:\Scripts\meuscript.ps1"
pause
Ideal para automações simples ou integração com tarefas agendadas.
📚 Fontes e Leitura Recomendada
- Microsoft Learn – about_Scripts
- DelftStack – Executar scripts PowerShell via .bat
- ServTI – Habilitar execução de scripts PowerShell
