Gnome – Introduction à Gnome-schedule (débutants)

gschedule-1

Bon il a fait chaud, très chaud et les news qui m’intéressent se font rare. La folie Ubuntu Edge s’est emparée de la toile « libre » et du coup on en bouffe matin, midi et soir, comme si la vie ne tenait désormais plus qu’à ça (je sais, je râle beaucoup en ce moment). Nous n’allons pas céder à cette hystérie (Apple’ienne) collective et occulter le sujet, pour sortir quelques broutilles comme ce petit billet dédié à Gnome-schedule, un petit outil sympa pour Gnome conçu dans le but de vous permettre de planifier des tâches uniques ou récursives. Dans l’absolu ça vous sera bien plus utile (ou pas).

Avant de commencer je dois quand même signaler que ce petit billet m’a été inspiré par cet article signé lamiradadelreplicante.com, où était présenté KCron, un outil similaire pour KDE dont nous avions parlé dans ce billet écrit par Lei00.

Ceci étant dit mettons-nous au travail.

Introduction :

La première étape va bien entendu consister à installer Gnome-Schedule, qui est généralement présent dans les dépôts des principales distributions GNU/Linux. Si ce n’est pas le cas vous pouvez vous procurer les sources en vous rendant sur cette page.

Maintenant que la bête est installée sur votre bécane il ne vous reste plus qu’à lancer Gnome-schedule et à créer votre première tâche, avec pour cela 3 possibilités :

  • Planifier une tâche récursive (tous les jours, toutes les semaines, tous les mois etc.)
  • Planifier une tâche qui doit s’exécuter une seule fois
  • Importer une règle selon un modèle préconfiguré

gschedule-2

Utilisation :

Pour l’exemple j’ai choisi une tâche facile, qui consiste à déplacer un fichier dans un répertoire à une heure définie. Comme cet article est dédié aux débutants je vous ai mis deux petits trucs particuliers dans la commande, qui pourront vous servir dans le cas où vous prendriez goût à la ligne de commande.

La commande que j’ai indiqué à gnome-schedule est donc la suivante :

mv ~/$user gnome-schedule ~/$user/test/gnome-schedule

Nous allons maintenant nous y intéresser un instant et la décomposer.

Dans cette ligne de commande l’action de déplacement est indiquée par la commande « mv » et on indique le répertoire contenant, à savoir « test ». Jusque-là rien de spécial. Par contre vous remarquerez que le chemin indiqué peut sembler un peu bizarre si vous n’êtes pas un familier de la ligne de commande.

Dans l’absolu nous aurions pu en effet utiliser la syntaxe suivante :

mv /home/nom-user/gnome-schedule /home/nom-user/test/gnome-schedule

Mais nous sommes paresseux donc nous allons faire plus court et tout aussi efficace.

Vous pouvez comme je l’ai fait plus haut utiliser l’alias « ~/ » , pour indiquer que cela se passe dans votre répertoire courant, à savoir « /home ».

Vous pouvez également vous contenter d’utiliser la variable « $user » pour indiquer qu’il s’agit de l’utilisateur courant. « $user » va se charger d’aller récupérer tout seul comme un grand le nom de l’utilisateur courant, sans que vous ayez à le renseigner dans la commande. Ce point peut être très pratique quand vous travaillez à distance sur un nombre de machines assez important et que vous n’avez pas forcément en tête tous les noms d’utilisateurs.

gschedule-3

Pour les reste c’est enfantin…

Une fois que votre commande est écrite il ne vous reste plus qu’à cliquer sur « Add » et le tour est joué. Votre commande est maintenant prête à s’exécuter à l’heure précise et (ou) le jour, la semaine ou le mois indiqué.

gschedule-4
Comme vous pouvez le voir sur cette capture le fichier a bel et bien été copié dans le répertoire test et une fois que la commande a été exécutée, celle-ci disparaît de la liste si elle n’est pas récursive.

Bon à savoir (même si vous vous en doutiez déjà). Les tâches récursives peuvent être enregistrées afin d’être importées et servir à nouveau ultérieurement, ou être éditées en fonctions de vos besoins.

gschedule-5

Conclusion :

Gnome-schedule est un logiciel simple et facile à utiliser, qui permet de faire bien des choses. Les possibilités dont il dispose dépendent de votre seule imagination, de vos besoins et quand même un peu de vos connaissances. Nous avons vu le lancement d’une commande simple mais rien ne vous empêche de planifier l’ouverture ou la fermeture d’applications pourvues d’une interface graphique, de planifier l’effacement de vos logs, de planifier vos backups, vos téléchargements, vos mises à jour etc…

Il est idéal pour les débutants mais aussi pour les utilisateurs souhaitant aller vite et ne souhaitant pas se prendre la tête avec ses équivalents en ligne de commande cron et crontab.

Si vous voulez plus d’exemples et prendre connaissance des différentes options vous pouvez effectuer un : man gnome-scedule ou gnome-schedule –help.

À vous de jouer maintenant.

Amusez-vous bien.


8 Responses

  1. phil 24 juillet 2013 / 12 h 12 min

    Bonjour

    article super intéressant et qui tombe à pic car je galère pour configurer des synchronisations régulières de différents dossiers présents sur mon Bureau avec ceux présents sur mon NAS.

    Je vais tester ce logiciel avec Grsync.

    Merci

  2. Okki 24 juillet 2013 / 10 h 06 min

    hmmm… $user est une variable interne propre à gnome-schedule ?

    Parce que normalement, ~ ne représente pas /home mais bel et bien /home/user. J’aurai donc plutôt vu ~/test/gnome-schedule pour obtenir /home/user/test/gnome-schedule. Maintenant, ~ est propre à certains shell (bash, zsh…), et n’est pris en compte que dans certains cas bien précis

    $ echo ~
    /home/okki

    $ echo ~/Musique/
    /home/okki/Musique/

    Dans ces deux premiers exemples, on voit que c’est ok, puisque le ~ est bien utilisé dès le début pour indiquer un chemin. Maintenant, si je tente de l’utiliser en plein milieu d’une commande, avec une option à laquelle je voudrais par exemple indiquer un chemin pour sauvegarder mes fichiers, on voit que ça ne fonctionne plus :

    $ echo « programme –option=~/Musique »
    programme –option=~/Musique

    Il aurait normalement du faire la substitution. C’est pour ça que dans les scripts shell, je préfère utiliser la variable interne $HOME

    $ echo $HOME
    /home/okki

    $ echo $HOME/Musique
    /home/okki/Musique

    $ echo « programme –option=$HOME/Musique »
    programme –option=/home/okki/Musique

    Pour ceux que ça intéresse, il existe de nombreuses autres variables internes intéressantes, http://abs.traduc.org/abs-fr/ch09.html#internalvariables (c’est d’ailleurs toujours utile d’avoir l’Advanced Bash-Scripting Guide dans ses bookmarks)

    • GutsBlack 24 juillet 2013 / 10 h 39 min

      C’est une bonne adresse merci :)

    • noireaude 24 juillet 2013 / 19 h 19 min

      C’est vrai ça fonctionne aussi et en fait c’est mieux. Merci pour le lien il est excellent :D

  3. GutsBlack 24 juillet 2013 / 9 h 28 min

    En faites ce n’est pas un équivalent à crontab mais c’est une interface graphique plutôt. C’est à dire que les tâches que tu rajoutes dans gnome-shedule se retrouve dans crontab, ça permet aussi d’apprendre la syntaxe.

    • noireaude 24 juillet 2013 / 9 h 30 min

      Oui je sais, mais c’est vrai que ma phrase est mal tournée :)

      • GutsBlack 24 juillet 2013 / 10 h 38 min

        C’étais juste une remarque pour les gens qui ne connaissent pas crontab. Et je fais pareil avec grsync, grsync permet de régler simplement rsync mais il donne également la ligne de commande qu’il utilise, ça permet d’apprendre à se servir de rsync tout comme gnome-shedule permet d’apprendre à se servir de crontab :p

        • noireaude 24 juillet 2013 / 19 h 18 min

          Intéressant faudra que je l’essaye également ;)

Comments are closed.