Quelle est la méthode recommandée pour automatiser une tâche sous Linux?


3

Je suis encore un peu nouveau sur Linux, mais voici ce que j'essaie de faire.

Je dois copier tous les sous-répertoires et fichiers d’un répertoire à un autre tous les 5 minutes environ, les anciennes données étant automatiquement remplacées par les nouvelles données.

J'aimerais aussi que cela fonctionne au démarrage. Est-il possible que cela soit fait? Si oui, de quel programme aurais-je besoin pour planifier l'automatisation et de quelle ligne de commande aurais-je besoin?


Et aussi parce que le site fonctionne mieux (c'est la vraie raison ..)
intuited

Réponses:


5

Je ferais la copie avec

rsync --archive --delete "fromdir/" "todir/"

Cela va être plus efficace que d'utiliser cp, puisque rsync copie uniquement les fichiers qui ont été modifiés, et même alors uniquement les copies sur la modification elle-même, plutôt que le fichier entier.

Si vous préférez qu'il ne supprime pas les fichiers dans todir qui ont été supprimés dans fromdir, vous venez de laisser de côté le --delete option.

le --archive L'option lui dit en gros de préserver l'état des fichiers ainsi que leur contenu. Notez que si vous avez des liens symboliques dans dir1, cela copiera le liens eux-mêmes, et ne pas les fichiers auxquels ils sont liés. Utiliser ce drapeau avec rsync est similaire à l'utilisation cp -a.

Assurez-vous que vous utilisez la barre oblique de fermeture sur fromdir/: cela raconte rsync copier le Contenu de ce répertoire, plutôt que le le répertoire lui-même . En d'autres termes, si vous omettre le final /, vous allez vous retrouver avec

todir/
todir/stuff
todir/fromdir/
todir/fromdir/morestuff

plutôt que

todir/
todir/morestuff

+1 pour améliorer ma réponse!
BloodPhilia

+1 pour la coopération! En fait, je ne peux pas, j'ai déjà voté votre réponse au début.
intuited

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.