No OS X Lion em zsh, como posso configurar um diretório /Users/username/tmp que é excluído após X dias?

No OS X Lion em zsh, como posso configurar um diretório /Users/username/tmp que é excluído após X dias?

Sou novo em scripts e trabalhos regulares no OS X, então agradeço antecipadamente a ajuda.

Estou procurando um diretório tmp em meu homedir, como em /Users/username/tmp, que posso usar como meu diretório de "downloads".

Meu objetivo é que os arquivos/diretórios neste diretório sejam excluídos após, digamos, 10 dias após o horário (último acesso).

Então, estou procurando um script e também o método para executá-lo regularmente no OS X Lion usando ZSH como shell.

Obrigado.

Responder1

Escreva um script que exclua arquivos em uma pasta se o horário for anterior a dez dias atrás e execute-o diariamente (não sei qual é o melhor mecanismo para isso no OSX; no Linux eu usaria anacron, ou falhando que o executam de hora em hora com o cron).

Script de exemplo (usa o diretório, por exemplo, ~/downloads, como primeiro argumento):

#!/bin/zsh

setopt extended_glob

targetpath=$1

[[ -d $targetpath ]] || (echo "Directory does not exist" 1>&2 && exit 1)

rm ${path}/**(.a+10) # ** will match recursively, and the bit in brackets is an
# extended glob qualifier, matching ordinary files with an atime more than ten days ago.
unsetopt extended_glob
exit 0

Provavelmente há todo tipo de coisa errada com isso, e se você costuma usar o extended_glob, não precisa ativá-lo e desativá-lo posteriormente no script, naturalmente.

informação relacionada