TASK LIST_KILL_SC
Autor: Eduardo Pontes | Publicado: 2011-03-05T19:36:00-03:00

Olá companheiros de blog, cá estou eu novamente com uma dica bacana sobre comandos de Windows. Já começo dizendo que somente fiz testes em Windows XP ou superiores ok. Bom vamos lá. A primeira coisa que devemos saber é para que serve o comando TASK List e Kill e SC. Bom Task List como o nome sugere, serve basicamente para listar os processos ativos na máquina, já o task kill serve para derrubar (matar), esses processos. O SC trabalha com os serviços do Windows. É bom diferenciarmos processos de serviços. Processos são todos os que estão em execução no “gerenciador de tarefas”(taskmgr.exe). A cada aplicativo que se abre é criado um novo processo. Existem processos iniciados automaticamente pelo sistema, rede, etc. Serviço é tudo aquilo que está dentro de “services.msc”. São ferramentas de gestão do sistema operacional. Vamos ao que interessa.Utilizando o TASK LISTInicie um prompt de comando no seu Windows:Iniciar à executar à cmd.exeNele digite: tasklistÉ&nbsp;exibida uma lista de processos que estão em execução no seu sistema operacional no momento.Ex.: 
Podemos ver quais as opções que o tasklist tem digitando tasklist /? No prompt.Se visualizar a ajuda podemos notar que o comando suporta muitos parâmetros, inclusive mostrar qual(is) o(s) serviço(s) que está(ão) vinculado(s) ao processo. Porém para este post vamos trabalhar com o parâmetro –s que permite visualizar os processos de um host remoto. Por exemplo, na sua rede abra um prompt em uma máquina qualquer e digite:Tasklist –s “ip ou nome do host remoto”:

Podemos notar todas as atividades(processos) abertos na máquina remota. Agora pense na seguinte situação, você precisa acessar um documento,&nbsp;sistema ou qualquer coisa que somente uma pessoa possa acessar por vez. Então você se depara com esta situação, você sabe quem está acessando,&nbsp; porém a pessoa já foi embora! Como resolver? Agora que já sabemos visualizar os processos de outra estação, basta colocar em pratica o comando TASKKILL.Abra um prompt de comando e digite taskkill /?:Podemos observar que se assemelha muito ao ajuda do tasklist. Para esse post os parâmetro que iremos usar será o /S (system – especifica o sistema remoto ao qual irá se conectar) e /PID (process id – especifica o PID do processo que precisa ser encerrado).
Execute o comando: tasklist –s “ip ou nome do host remoto”, novamente: 
Perceba que no host remoto há dois processos do aplicativo “DBMonitor.exe” rodando. Um com o ID: 3196 e o outro com ID:5756Vamos derrubar! Execute o comando:Obs.: para este exemplo utilizarei o IP 10.13.0.223 da minha estação remota!Taskkill /s 10.13.0.223 /pid 3196Taskkill /s 10.13.0.223 /pid 5756Veja o resultado:

Para se certificar execute novamente o tasklist –s 10.13.0.223 e veja se o processo ainda existe:

Bacana né. Agora é só usar com moderação, ou não. SrsrOutro comando legal para se executar é o SC, e o mais legal é que dá para executar em hosts remotos!Abra um prompt de comando e digite “SC”Observe que há várias opções para o SC. Para esse post iremos utilizar o &lt;Server&gt;(\\ip ou nome do host remoto), query, config, start, stop.Primeiramente devemos saber se vamos utilizar o SC em uma máquina local ou remota. Caso seja local não precisa usar a opção &lt;server&gt;, porém eu utilizarei em uma máquina remota para demonstrar como utilizar o SC remotamente.Vamos abrir um prompt de comando e digitar SC \\“ip ou hostname na estação remota”: 
Exemplo:


Ao utilizar a opção “query”, você está orientando o comando a fornecer informações do estado de todos os serviços que a máquina possui. Pressione &lt;enter&gt;. Ao fim da execução deverá apresentar algo do tipo:

Para ser mais especifico, vamos utilizar uma busca um pouco mais refinada:Digite:Obs.: Para este exemplo irei utilizar o ip 10.13.0.223.SC \\10.13.0.223 query tlntsvr – onde tlntsvr é o executável do serviço de “Telnet”. Veja a saída:

Ele mostra algumas informações, porém o que necessitamos aqui é o State (estado do serviço), note que está “stopped” (parado).Para alterar essa configuração precisamos primeiro habilitar o serviço e logo depois iniciar. Para alterar o serviço usamos a opção “config” do SC.Digite: sc \\10.13.0.223 config tlntsvr start= autoOnde:
- sc é o comando que altera os serviços- \\10.13.0.223 é a máquina remota que irei alterar o serviço- Config é a opção que junto com o sc altera o estado do serviço- Tlntsvr é o executável do serviço telnet- Start é a entrada que iremos dar para iniciar o serviço- Auto significa que o serviço irá iniciar automaticamente junto com Windows.Obs.: Após o sinal de = é necessário haver um espaço para o comando funcionar. Coisas de Windows! 

Veja a saída:
O serviço foi alterado com sucesso. Para verificar o status, rode novamente o SC \\10.13.0.223 query tlntsvr
﻿Note que a primeira vez que se executa o comando “query”, o estado ainda é “stopped”, isso porque o serviço está habilitado, porém não iniciado. Agora execute o comando conforme a seqüência da figura acima:SC \\10.13.0.223 start tlntsvr – para iniciar o serviço, e logo após verifique seu estado&nbsp;executando novamente o comando “query”. Perceba que o estado mudou para “running”(executando).Bom caso queira fazer o contrário, é somente mudar o comando para:SC \\10.13.0.223 stop tlntsvr – para parar o serviço. O mesmo entrará no estado “stopped”. E para desabilitar execute o seguinte comando:SC \\10.13.0.223 config tlntsvr start= disabled – Para desabilitar o serviço. Lembrem-se que após o sinal de = é necessário haver um “espaço”.Espero que tenham gostado galera, porque eu sou usuário, mas sou avançado!