Em determinadas situações, como administradores de infraestrutura nos deparamos com situações onde temos de executar scripts com certa recorrência. Isso pode ser feito no agendador de tarefas, via GPO.
Vou demonstrar por aqui.
Abra o Group Policy Management, expanda o seu domínio, clique com o botão direito sobre Group Policy Object e selecione New.
Dê um nome à sua GPO.
Clique com o botão direito sobre a GPO criada e selecione edit.
Para criar o agendamento, siga este caminho: Computer Configuration > Preferences > Control Panel Settings > Scheduled Tasks
Na janela da direita, selecione New / Scheduled Task (At least Windows 7).
No meu caso, vou criar um agendamento para executar um arquivo bat que irá efetuar a limpeza da lixeira das estações do domínio.
Em General, mude action para create, crie o nome à tarefa, adicione uma descrição (opcional) e altere o usuário para System.
Deixe marcada a opção Run whether user is logged on or not.
Em triggers, crie o agendamento conforme a sua necessidade. Segue o meu exemplo.
Em actions vamos adicionar o nosso script.
Clique em browse e selecione o script desejado. (Caso queiram o script de limpeza de disco, vou deixar no final do post)
Obs: Lembre de deixar o arquivo em uma pasta compartilhada, eu costumo deixar na pasta netlogon do domínio, onde todos os usuários tem permissão de leitura por padrão.
As abas Conditions, Settings e Common podem ficar da forma padrão.
Clique em OK e feche e editor da política.
Link a política com a OU desejada.
Acesse uma das estações, abra o CMD e digite gpupdate /force.
Reinicie a máquina.
Agora abra o agendador de tarefas da estação como administrador, clique em biblioteca, e a tarefa constará lá, com o nome criado.
Script de Limpeza:
@echo off
echo Iniciando a limpeza de disco...
REM Executa a limpeza de disco para todos os volumes disponíveis
echo Limpando arquivos temporários...
C:\Windows\System32\cleanmgr.exe /sagerun:1
REM Esvazia a lixeira
echo Esvaziando a Lixeira...
C:\Windows\System32\cmd.exe /c "rd /s /q C:\$Recycle.Bin"
echo Limpeza de disco concluída.
Copie o código, cole em um notepad e salve com a extensão .bat.
Olá Jhonathan, muito bom seu passo a passo. Aqui não consegui fazer funcionar e acho que tem relação com permissões. Consigo fazer o deployment da tarefa no computador, mas ele roda, não dá erro nenhum, mas não faz o que precisa.
Depois que a tarefa é gravada por GPO fiz um teste alterado para o meu usuário ao invés do System e marquei a opção de rodar se estiver logado. Aí ele roda, mas com as configurações originais não funciona. Alguma dica do que pode ser?
Desculpa pela demora na resposta. O usuário System é o usuário com maior privilégio de permissões locais na máquina, então o ideal é rodar por ele. Tenta logar como administrador da maquina e seta o system nas configurações. Pode também tentar abrir o agendador de tarefas como administrador.