PsExec v2.44

Por Mark Russinovich

Publicado: 5 de novembro de 2026

Download Baixar PsTools(5 MB)

Introdução

Utilitários como o Telnet e programas de controlo remoto como o PC Anywhere da Symantec permitem executar programas em sistemas remotos, mas podem ser difíceis de configurar e exigir a instalação de software cliente nos sistemas remotos a que pretende aceder. O PsExec é um substituto de telnet leve que permite executar processos em outros sistemas, com total interatividade para aplicativos de console, sem ter que instalar manualmente o software cliente. Os usos mais poderosos do PsExec incluem o lançamento de linhas de comandos interativas em sistemas remotos e a ativação remota de ferramentas como o IpConfig que, de outra forma, não têm a capacidade de mostrar informações sobre sistemas remotos.

Nota: alguns scanners antivírus relatam que uma ou mais das ferramentas estão infetadas com um vírus de "administração remota". Nenhum dos PsTools contém vírus, mas eles têm sido usados por vírus, e é por isso que eles disparam notificações de vírus.

Instalação

Basta copiar o PsExec para o seu PATH. Ao digitar "psexec", é apresentada a respetiva sintaxe de utilização.

Utilização do PsExec

Consulte a edição de julho de 2004 da Windows IT Pro Magazine para obter o artigo de Mark que aborda o uso avançado do PsExec.

Utilização:

psexec [\\\\computer[,computer2[,...] | @file]][-u user [-p psswd]][-n s][-r servicename][-h][-l][-s|-e][-x][-i [session]][-c [-f|-v]][-w directory][-d][-<priority>][-g n][-a n,n,...][-accepteula][-nobanner] cmd [arguments]
Parâmetro Descrição
-a Separe os processadores nos quais a aplicação pode ser executada por vírgulas, onde 1 é a CPU com a numeração mais baixa. Por exemplo, para executar o aplicativo na CPU 2 e CPU 4, digite: "-a 2,4"
-c Copie o executável especificado para o sistema remoto para execução. Se você omitir essa opção, a aplicação deve estar no PATH do sistema no sistema remoto.
-d Não espere o processo terminar (não interativo).
-e Não carrega o perfil da conta especificada.
-f Copie o programa especificado mesmo que o arquivo já exista no sistema remoto.
-i Execute o programa para que ele interaja com a área de trabalho da sessão especificada no sistema remoto. Se nenhuma sessão for especificada, o processo será executado na sessão do console. Este sinalizador é necessário ao tentar executar aplicativos de console interativamente (com E/S padrão redirecionada).
-h Se o sistema de destino for Vista ou superior, faça com que o processo seja executado com o token elevado da conta, se disponível.
-l Executar o processo como usuário limitado (remove o grupo Administradores e permite apenas privilégios atribuídos ao grupo Usuários). No Windows Vista, o processo é executado com baixa integridade.
-n Especifica o tempo limite, em segundos, para ligar a computadores remotos.
-p Especifica a palavra-passe opcional para o nome de utilizador. Se omitir esta opção, ser-lhe-á pedido que introduza uma palavra-passe mascarada.
-r Especifica o nome do serviço remoto a criar ou com o qual interagir.
-s Execute o processo remoto na conta do sistema.
-u Especifica o nome de usuário opcional para login no computador remoto.
-v Copie o ficheiro especificado somente se ele tiver um número de versão maior ou for mais recente do que o ficheiro no sistema remoto.
-w Defina o diretório de trabalho do processo (relativo ao computador remoto).
-x Exiba a interface do usuário na área de trabalho segura Winlogon (somente sistema local).
-prioridade Especifica -low, -belownormal, -abovenormal, -high ou -realtime para executar o processo em uma prioridade diferente. Utilize -background para executar com baixa prioridade de memória e E/S no Vista.
computador Direcione o PsExec para executar a aplicação no computador remoto ou computadores especificados. Se você omitir o nome do computador, o PsExec executará o aplicativo no sistema local e, se você especificar um curinga (\\*), o PsExec executará o comando em todos os computadores do domínio atual.
@file PsExec executará o comando em cada um dos computadores listados no ficheiro.
cmd Nome da aplicação a executar.
argumentos Argumentos a transmitir (observe que os caminhos de arquivo devem ser caminhos absolutos no sistema de destino).
-accepteula Esta opção suprime a exibição da caixa de diálogo de licença.
-nobanner Esta opção suprime o banner de inicialização e a mensagem de direitos de autor.

Você pode colocar aplicações que têm espaços em seu nome com aspas, por exemplo:

psexec \\marklap "c:\\long name app.exe"

A entrada só é passada para o sistema remoto quando prime a tecla Enter. Digitar Ctrl-C encerra o processo remoto.

Se você omitir um nome de utilizador, o processo será executado no contexto da sua conta no sistema remoto, mas não terá acesso aos recursos da rede (porque está a executar impersonation). Especifique um nome de utilizador válido na sintaxe Domain\User se o processo remoto exigir acesso a recursos de rede ou de ser executado numa conta diferente. Observe que a senha e o comando são criptografados em trânsito para o sistema remoto.

Os códigos de erro retornados pelo PsExec são específicos para as aplicações que executa, não para o PsExec.

Exemplos

Este artigo que escrevi descreve como o PsExec funciona e dá dicas sobre como usá-lo:

O comando a seguir inicia um prompt de comando interativo em \\marklap:

psexec -i \\marklap cmd

Este comando executa IpConfig no sistema remoto com o /all switch e exibe a saída resultante localmente:

psexec -i \\marklap ipconfig /all

Este comando copia o programa test.exe para o sistema remoto e executa-o interactivamente:

psexec -i \\marklap -c test.exe

Especifique o caminho completo para um programa que já está instalado em um sistema remoto se não estiver no caminho do sistema:

psexec -i \\marklap c:\bin\test.exe

Execute o Regedit interativamente na conta do sistema para visualizar o conteúdo das chaves SAM e SECURITY::

psexec -i -d -s c:\windows\regedit.exe

Para executar o Internet Explorer com privilégios de utilizador limitado, use este comando:

psexec -l -d "c:\program files\internet explorer\iexplore.exe"

Baixar Baixar PsTools(5 MB)

PSTools

O PsExec faz parte de um kit crescente de ferramentas de linha de comando Sysinternals que auxiliam na administração de sistemas locais e remotos denominado PsTools.

Funciona em:

  • Cliente: Windows 8.1 e superior.
  • Servidor: Windows Server 2012 e superior.