none
Generar script para borrar archivos y carpetas de un directorio. RRS feed

  • Pregunta

  • Solicito su ayuda para generar un script :

    Cheque el  espacio libre del drive "C" cuando quede el 30% de espacio libre que borre los archivos y carpetas del directorio:

    c:\Windows\temp

    Gracias de Antemano

    jueves, 29 de marzo de 2018 21:24

Todas las respuestas

  • Hola Eliaspgr:

    En este post obtendrás como limpiar tu carpeta windows temp de un modo recursivo

    https://social.technet.microsoft.com/Forums/es-ES/b7a427d3-c134-462e-a45e-904d0cef4bab/borrar-ficheros-y-carpetas-despus-de-48h-dentro-de-una-carpeta?forum=scriptgenerales

    y adaptando esto ya lo tienes resuelto.

     Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'" | select-object Size,Freespace | % {$_
    .FreeSpace=($_.FreeSpace/1GB);$_.Size=($_.Size/1GB);$_}

    un saludo

    • Propuesto como respuesta Pablo Rubio domingo, 1 de abril de 2018 0:12
    viernes, 30 de marzo de 2018 4:12
  • Hola:

    El script finalmente puede quedar como este:

    $lib = Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'" | select-object Freespace | % {$_.Freespace/1024/1024};
    #obtenido en $lib el espacio libre del disco
    $ocu = Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'" | select-object Size | % {$_.Size/1024/1024};
    #obtenido en $libre el espacio total
    $libre=[int]$lib;
    $ocupado = [int]$ocu;
    #convertimos las variables a entero para hallar el porcentaje
    if (($libre*30/$ocupado)-lt30) #evaluamos el porcentaje
    {
    $Ruta = ('C:\Windows\Temp\')
    
    IF (!(Test-Path $Ruta )) 
    {
    	Write-Warning ("No es posible acceder al directorio "+$Ruta)
    }
    try 
    {
    	Get-ChildItem $Ruta | Remove-Item -Force -Recurse -Verbose
    }
    catch
    {
    	Write-Error "Error borrando ficheros";
    	throw $Error[0].Exception.Message;
    	break
    }
    };

    Es importante que la sesión de powershell debe de ejecutarse en modo administrador, pues la ruta Windows\temp requiere de privilegios.

    Un saludo

    domingo, 1 de abril de 2018 5:16