Re: commande en console, crontab et archivemail
On Mon, Jan 06, 2003 at 03:58:19PM +0100, Ploum wrote:
> voilà, j'ai beau gougeulé de partout, je ne trouve pas la réponse à mon
> problème.
>
> Voilà, j'aimerais, via crontab, sauver tous les mois le fichier zippé
> des mails que j'ai envoyé dans un nouveau fichier, du nom du mois en
> question
>
> j'imaginais un truc genre :
>
> "mv monfichier < date +%m-%"
Salut :) (et pis meilleurs voeux aux debianeux de la liste)
Mhh, le '<', en shell, ca veut dire 'prends en entrée les données du
fichier suivant', donc, c'est pas du tout ce que tu cherches à faire.
À la limite, ça aurait pu être un cat mon_fichier > date..., mais c'est
pas une économie de ressources :)
Donc, j'imagine plutôt un truc du genre
mv mon_fichier "prout.`date +%m-%d`"
Attention, dans les crontab, les % ont une signification particulière,
et donc, si cette commande se retrouve dans une crontab, il faudra
rajouter un \ devannt tous les %.
> mais ça ne marche pas ! Comment faire ?
Ah non, ca marche pas :)
> Autre question, si je demande à crontab d'effectuer ça toutes les
> semaines, par exemple chaque lundi via
> "* * * * 0 archivemail -d 10 -o ~/mail/archives ~/mail/sent"
> est-ce qu'il va effectuer cette tache si je ne le lance que le mardi ?
> Et ma syntaxe est-elle bonne quelque soit l'heure à laquelle j'allume
> mon PC le lundi ?
Mhh, la page de man pour la crontab (attention, man 5 crontab, sinon, on
tombe sur la commande crontab) est plutôt bien faite.
Tiens, par exemple, ceci pourrait de simplifier la vie:
Instead of the first five fields, one of eight special
strings may appear:
string meaning
------ -------
@reboot Run once, at startup.
@yearly Run once a year, "0 0 1 1 *".
@annually (same as @yearly)
@monthly Run once a month, "0 0 1 * *".
@weekly Run once a week, "0 0 * * 0".
@daily Run once a day, "0 0 * * *".
@midnight (same as @daily)
@hourly Run once an hour, "0 * * * *".
Et si ton ordinnateur n'est pas allumé en permanence, je te conseille
d'installer anacron, qui est fait pour ça.
Package: anacron
Description: a cron-like program that doesn't go by time
Anacron (like `anac(h)ronistic') is a periodic command scheduler. It
executes commands at intervals specified in days. Unlike cron, it
does not assume that the system is running continuously. It can
therefore be used to control the execution of daily, weekly and
monthly jobs (or anything with a period of n days), on systems that
don't run 24 hours a day. When installed and configured properly,
Anacron will make sure that the commands are run at the specified
intervals as closely as machine-uptime permits.
.
This package is pre-configured to execute the daily jobs of the Debian
system. You should install this program if your system isn't powered on
24 hours a day to make sure the maintenance jobs of other Debian
packages
are executed each day.
> Autre problème, avec archivemail, j'ai beau faire exactement omme alexis
> de lattre
> dans sa nouvelle formation, j'ai aucun problem avec la commande
> d'archivage, mais avec --delete, j'ai le message suivant :
>
> 15:42 ploum@mars ~% archivemail --delete -d 2 ~/mail/trash
> Traceback (most recent call last):
> File "/usr/bin/archivemail", line 968, in ?
> main()
> File "/usr/bin/archivemail", line 550, in main
> archive(mailbox_path)
> File "/usr/bin/archivemail", line 755, in archive
> _archive_mbox(mailbox_name, final_archive_name)
> File "/usr/bin/archivemail", line 828, in _archive_mbox
> retain.finalise(mailbox_name)
> TypeError: finalise() takes exactly 1 argument (2 given)
> zsh: exit 1 archivemail --delete -d 2 ~/mail/trash
Connais pas. Faudrait voir avec l'auteur.
>
> merci de l'aide !
--
Manu
// Il faut prendre les femmes comme on prend les tortues, en les mettant
// sur le dos. Elemir Bouges (1852-1925)
Reply to: