none
Script para Excluir Pastas de Usuários Temporários RRS feed

  • Pergunta

  • Prezados(as),

    Trabalho numa universidade e todo final de semestre temos que fazer manutenção preventiva das máquinas dos laboratórios.

    Gostaria de saber se há possibilidades de criar um script que exclua os pastas dos usuários que ficam dentro do diretório C:\Users . Como se trata de computadores dos laboratórios precisamos sempre fazer essa faxina, lembrando que as pastas "Administrador", "Pública" e "Default" não poderão serem excluídas.

    Att,

    BISTILVA.


    Marcelo Silva

    sexta-feira, 6 de fevereiro de 2015 20:36

Respostas

  • Eu recomendaria o DelProf, porém ele só faz filtro por dia inativo.

    Teste este comando feito em PowerShell.

    dir C:\Users -Directory | 
        ? {$_.Name -notin @("Administrador","Default","Public")} |
        Remove-Item

    É uma única linha com 3 comandos:

    1) Lista apenas os diretórios da pasta c:\Users

    2) Filtra a lista para que o resultado não contenha "Administrador", "Default" e "Public"

    3) Apaga os itens da lista.

    Você ainda pode incrementar para fazer este comando ser executado remotamente com "Invoke-Command" ou com o PSExec.


    Fábio de Paula Junior

    terça-feira, 10 de fevereiro de 2015 12:37
    Moderador

Todas as Respostas

  • Opa Marcelo, o script é possível de ser montado sim, mas esses dias descobri uma solução elegante pra isso. Se você abrir uma group policy >> Configuração de Computador >> Modelos Administrativos >> Perfis de Usuário ... você vai achar uma política "Excluir perfis de usuários anteriores ao número de dias especificado na reinicialização do Sistema".

    Será que isso te ajuda?

    O ponto que precisa ser lembrado é que esta política não aplica em XP.


    Cláudio Costa - http://claudio-costa.blogspot.com

    sexta-feira, 6 de fevereiro de 2015 21:30
  • Eu recomendaria o DelProf, porém ele só faz filtro por dia inativo.

    Teste este comando feito em PowerShell.

    dir C:\Users -Directory | 
        ? {$_.Name -notin @("Administrador","Default","Public")} |
        Remove-Item

    É uma única linha com 3 comandos:

    1) Lista apenas os diretórios da pasta c:\Users

    2) Filtra a lista para que o resultado não contenha "Administrador", "Default" e "Public"

    3) Apaga os itens da lista.

    Você ainda pode incrementar para fazer este comando ser executado remotamente com "Invoke-Command" ou com o PSExec.


    Fábio de Paula Junior

    terça-feira, 10 de fevereiro de 2015 12:37
    Moderador