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

1

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

Eu estou olhando para ter um diretório tmp no meu homedir, como em / Users / username / tmp, que eu posso usar como meu diretório "downloads".

Meu objetivo é fazer com que os arquivos / diretórios neste diretório sejam excluídos após 10 dias após o atime (último acesso).

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

Obrigado.

    
por adarsh 27.05.2012 / 16:45

1 resposta

1

Escreva um script que apague arquivos em uma pasta se o seu atime for anterior a dez dias, e execute-o diariamente (não sei qual é o melhor mecanismo para isso no OSX; no Linux, usaria anacron , ou falhar que corra de hora em hora com o cron).

Exemplo de script (pega 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

Há provavelmente todo tipo de coisas erradas com isso, e se você usa habitualmente o extended_glob, não precisa ativá-lo e, mais tarde, no script, naturalmente.

    
por 27.05.2012 / 19:00