Windows Management Instrumentation Command-line (WMIC) - Parte 2

by Hirashiki 1. October 2008 21:12

Continuando o meu post anterior, vamos tratar de mais comandos com o WMIC. Porém, antes de todos os comandos, iremos adicionar parâmetros para realizar as ações em uma máquina remota:

WMIC /node:xxx.xxx.xxx.xxx /user:Dominio\Usuario /password:senha ....

Os parâmetros são simples de entender:

- Node: Indica qual "nó" (IP ou Host) iremos trabalhar
- User: Usuário que executará a ação. Dependendo do comando a ser executado, este usuário deverá ter privilégios administrativos
- password: senha do usuário. Caso você tire este parâmetro da linha de comando, o WMIC solicitará a senha.

Reiniciar uma máquina

Como todo usuário de Windows você sabe que dependendo do problema do Sistema Operacional, um simples restart na máquina resolve:

WMIC /node:xxx.xxx.xxx.xxx /user:Dominio\Usuario /password:senha OS where Primary="True" call win32shutdown 6

Finalizar um processo

Para finalizar um processo, do mesmo modo que você faria usando o gerenciador de tarefas é:

WMIC /node:xxx.xxx.xxx.xxx /user:Dominio\Usuario /password:senha process where caption="processo.extensao" call terminate

Iniciar um processo

Em teoria, você pode iniciar qualquer processo usando o comando WMIC. Porém, programas de interface gráfica são iniciados, mas não aparecem na máquina remota. Para exemplificar, execute o comando:

WMIC /node:xxx.xxx.xxx.xxx /user:Dominio\Usuario /password:senha process call create "notepad.exe"

Você consegue ver na listagem de processos o executável notepad.exe, porém não aparece sua janela. Por medida de segurança, a microsoft bloqueou a inicialização de processos interativos remotamente.

Para "Burlar" esta segurança, utilize o programa PSEXEC instalado na máquina remota:

WMIC /node:xxx.xxx.xxx.xxx /user:Dominio\Usuario /password:senha process call create "psexec -i -d -s notepad.exe"

Executando o mesmo comando em várias máquinas

Se você fosse usar o WMIC para reiniciar 50 máquinas, e se em cada máquina você digitasse o comando, iria demorar muito. Você pode criar um arquivo TXT com o IP das máquinas e utilizar somente uma linha de comando:

WMIC /NODE:@"c:\MinhaLista.txt" OS WHERE Primary="TRUE" CALL Win32ShutDown 6

O WMIC é somente um meio de acessar os serviços disponibiliados pelo WMI. Nos próximos post, veremos a implementação do WMI com c#.

Tags: , , , , ,

Windows

Calendário

<<  September 2010  >>
MoTuWeThFrSaSu
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

View posts in large calendar

RecentPosts