Eliminar automáticamente una carpeta diariamente

Respuestas:

18

Appplescript e iCal

Abra Applescript e ingrese el siguiente código:

tell application "Finder"
  delete folder "folder" of home
end tell

Reemplace la carpeta con la carpeta que desea eliminar y guarde el archivo.

Si la carpeta que desea eliminar está fuera del directorio de inicio (por ejemplo, la carpeta / Usuarios), reemplace la línea de eliminación con:

delete folder "Users" of startup disk

Luego abra iCal y cree un nuevo evento recurrente en el momento que desee y, como alarma, elija Ejecutar script y seleccione el applecript que creó.


Cron

Abra Terminal.app e ingrese:

crontab -e

Allí al archivo abierto, agregue la siguiente línea

0    4       *       *       *       rm -rf /Users/USER/folder

reemplazando / Users / USER / folder con la ruta completa de su carpeta y guarde el archivo.


Lanzado

Cree un nuevo documento de texto y pegue el siguiente código:

rm -rf /Path/to/Folder

Llamémoslo script.sh

Según este artículo , cree otro documento de texto nuevo y pegue lo siguiente:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
 "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>Recurring Folder Deletion</string>
  <key>UserName</key>
  <string>nuc</string>
  <key>Program</key>
  <string>/path/to/script.sh</string>
  <key>StartCalendarInterval</key>
  <dict>
    <key>Minute</key>
    <integer>0</integer>
    <key>Hour</key>
    <integer>4</integer>
  </dict>
  <key>Debug</key>
  <false/>
  <key>AbandonProcessGroup</key>
  <true/>
</dict>
</plist>

Reemplace nuc con el nombre de usuario de su cuenta y /path/to/script.sh con la ruta completa del script que creamos en el primer paso.

Guarde el archivo en / Library / LaunchDaemons / como my_rfd.plist .

Finalmente, inicie Terminal.app y escriba:

launchctl load /Library/LaunchDaemons/my_rfd.plist
nuc
fuente
Muy buena respuesta. +1 por dar dos explicaciones.
moonglum
La carpeta no está en mi directorio personal: ¿cómo puedo eliminar una carpeta de la raíz de un disco duro llamado "Usuarios"?
Ryan
@ryan editó la respuesta para incluir su solicitud.
nuc
Teniendo en cuenta el estado futuro desconocido de cron, sería maravilloso si agregara un método launchd para hacer esto también.
Jason Salaz
1
¡Se agregó la forma de lanzamiento de @vxjasonxv! :)
nuc
3

Hazel es una gran aplicación para hacer este tipo de cosas. No es gratis, pero funciona muy bien.

Lo uso para "Etiquetar" o resaltar archivos que se han descargado en las últimas 24 horas, luego para eliminar archivos de mi carpeta de descargas que tienen más de 7 días de antigüedad.

Luego lo hago vaciar mi basura una vez al mes.

Esto es solo lo básico de lo que se puede hacer con Hazel, es genial.

[No tengo interés financiero en Hazel]

zevlag
fuente
Gracias, también tengo a Hazel. También publiqué
Ryan