Comment programmer une application pour qu'elle soit lancée, y compris son interface graphique


2

J'ai un tableur calc que j'essaie d'automatiser. Lorsqu'il est ouvert, il collecte des données, calcule, enregistre lui-même et quitte.

J'ai donc créé un script pour appeler cela.

soffice --calc --norestore Updater.ods

Si je lance le script ./updater.sh calcouvre et fait ce que son supposé faire :)

Cependant, quand je le mets crontaboufcrontab

00     15     *     *     *       export DISPLAY=:0 && /path/updater.sh

Je peux voir que le processus est en cours d'exécution, mais il ne termine aucune des actions que cela aurait si l'ouverture de l'interface graphique était ouverte. Et exécuter le script depuis le terminal ouvre l'interface graphique, mais avec cron, l'interface graphique n'est pas ouverte. Je me demande donc s'il est possible d'ouvrir une application (et son interface graphique) avec cron ou un autre planificateur?

Toute aide serait appréciée.

Réponses:


1

Essayez sans le &&

00 15 * * * export DISPLAY=:0 /path/updater.sh

J'espère que ça aide


1
Vous ne devriez pas avoir non exportplus, si vous supprimez &&.
muru

1
Cela a fonctionné en utilisant ce qui suit: (aucune exportation ou &&)00 15 * * * DISPLAY=:0 /path/updater.sh
Les

0

Il existe une autre option, pour planifier des tâches graphiques, pour.

Dans Orage, l'application de calendrier (double-cliquez sur l'horloge dans le panneau système), double-cliquez un jour.

Sélectionnez un événement, nouveau. Donnez-lui un nom, ici peut-être 'updater'. Réglez l'heure à 15h00.

Maintenant, choisissez l'onglet: Rappel, Application, utilisez: /path/updater.sh Désactivez le son et les autres options désagréables.

Maintenant, choisissez l'onglet: Répétition, Fréquence, quotidien, 1

J'ai une interface en allemand, alors peut-être que ma traduction pour les onglets ne correspond pas.

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.