Comandos no Shell do Windows
Tags: monitoring, shell, zabbix, windows
Published: 2023-05-13 18:06:42

---
title: Comandos no Shell do Windows
published: true
date: 2021-05-17 21:08:26 UTC
tags: monitoring,shell,zabbix,windows
canonical_url: 
---

![Windows Shell](https://cdn-images-1.medium.com/max/550/1*9QODPwl0Qyimm5XFZIajgA.png)

Algumas várias vezes um analista surge com uma ideia mirabolante de monitoramento, e isso é bom… sério… mas vamos combinar… MEU DEUS rs Testes que mais parecem robôs, contadores complexos, querys duvidosas, etc…  
Onde trabalho, grande parte da solução é Windows, e muitas vezes os analistas são bem focados em sistemas operacional… Pedem monitoramentos de tamanho de pasta, quantia de arquivos com mesmo nome em um diretório, tempo limite de um diretório sem novos arquivos… coisa do tipo.

Nesse caso, utilizando o Zabbix, quase sempre faço esses monitoramentos criando itens que executam comandos remotos dentro do Shell do Windows. Vou listar aqui alguns que mais utilizo.

### **Contador de arquivos em um diretório**

Muitas vezes preciso saber se existem (e quantos existem) arquivos de logs, de backups, ligações gravadas, coisas do tipo, precisando sempre estar atento a quantos itens tem em determinado diretório para saber se tudo esta correndo bem.

Nesse caso, crio um item (exemplo abaixo) informando que:

O tipo é “Agent Zabbix (Ativo)”, ou seja, o parâmetro de “Active Server” dentro do agent precisa estar configurado com o endereço do seu Zabbix Server (ou Proxy). Lembrando que como vamos rodar um comando remoto, o parâmetro de comando remoto dentro do agent também precisa estar como “1”

Na chave, o comando responsável por executar comandos no Shell é o “system.run”. Após informar a key, informamos o caminho do diretório: dir “G:\NotImported” /b /a | find /c /v “”

![](https://cdn-images-1.medium.com/max/681/1*5pswr3BpYS9-ED71sjxHOg.png)

O item foi configurado para ser checado a cada 24h, então olha que interessante o retorno que eu tenho. Limpo e claro, trazendo a quantia exata de quantos arquivos tenho dentro daquele diretório.

![](https://cdn-images-1.medium.com/max/176/1*dI6O5us14HDO2zqAp3WyFw.png)

### **Contador de arquivos do mesmo nome**

A utilização desse método é quase o mesmo que o anterior, porém em alguns momentos, o diretório usado possui outros diretórios ou arquivos que você não quer na sua contagem.

Dessa forma, o comando utilizado continua sendo o “system.run”. E a key, informamos o caminho do diretório: dir “G:\NotImported” /b /a-d | find /c /v “img” .

Dentro dos “” eu inseri a palavra img por exemplo, dessa forma, todo arquivo que conter o termo img será listado.

### Tamanho usado de um diretório específico

Sabe aquela chave que mais amamos para capturar utilização de um diretório? Sim, o dito cujo vfs.fs.size. Mesmo a questão se tratando de um diretório especifico e não de um disco, essa chave também funciona perfeitamente.

Por exemplo, ao invés de utilizar o vfs.fs.size[G:,used], podemos utilizar o vfs.fs.size[G:\InputFromClient,used].

Esses são itens criados no meu dia a dia, então da mesma forma que um dia procurei sobre, espero que caso você esteja procurando algo desse tipo pra utilizar em seu projeto, trabalho, etc… que seja de grande utilidade!

Caso tenham alguma dúvida, dica, conselho, etc… Me chama no meu Linked-in, vamos bater um papo.