OK, então se você criou uma entrada cron como esta para o usuário relevante (sua pergunta não foi muito específica com a especificação):
0/5 * * * * /path/to/script
e o script se parece com algo assim e você faz chmod + x / caminho / para / script
#!/bin/bash
set -x
today=$(date -d "today 00:00" "+%s")
if [[ -s ~/cronflag && -f ~/cronflag ]]; then
if [[ $(( $today - $(cat ~/cronflag ) )) -ge 604800 ]]; then
echo huzzah!
# /path/to/weekly
echo $today > ~/cronflag
exit 0
fi
else
# /path/to/weekly
echo hip-hop huzzah!
echo $today > ~/cronflag
exit 0
fi
você deve ser capaz de obter o resultado desejado presumindo que a) adicione a coisa que você quer que seja feita semanalmente nos dois lugares onde você vê # / path / to / weekly (sem o #;}) eb) a máquina geralmente recebe um tempo de atividade de > = 10 minutos.