Forum Linux.débutant Utiliser "at" pour lancer un programme graphique ?

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
0
13
avr.
2020

Avec at, je peux programmer le lancement d'un script qui sera exécuté par défaut dans /bin/sh :

$ echo "/chemin/script.sh" | at now +1 minute
warning: commands will be executed using /bin/sh
job 6 at Mon Apr 13 11:53:00 2020

Mais je n'arrive pas à lancer de la même façon un programme graphique. Par exemple $ echo "/usr/bin/firefox" | at now +1 minute ou $ echo "/usr/bin/firefox &" | at now +1 minute ne me lance pas de fenêtre.

En fait, ce qui m'intéresse, ce serait de lancer un script dans une fenêtre de terminal qui s'ouvrirait à une heure précise, un truc du genre $ echo "konsole /chemin/script.sh" | at now +1 minute.

Quelque chose m'échappe…

  • # Complément d'infos

    Posté par  . Évalué à -1.

    Salut,

    Regarde peut-être par  ?

    Pas sûr, mais si pas de /etc/at.allow c'est peut-être root qui lance et n'a pas accès au display ?

    Matricule 23415

  • # Affecter la variable DISPLAY

    Posté par  . Évalué à 3.

    Pour que le programme sache où s'afficher, il faut définir la variable DISPLAY. Fais précéder tes commandes de "DISPLAY=:0", par exemple "DISPLAY=:0 konsole".

    • [^] # Re: Affecter la variable DISPLAY

      Posté par  (site web personnel, Mastodon) . Évalué à 2.

      Merci pour vos réponses ! Je m'étais pourtant déjà fais avoir avec des histoires de variables d'environnement avec at… Effectivement, ainsi ça marche :

      $ echo "DISPLAY=:0 firefox https://linuxfr.org/" | at now +1 minute
      

      Voici les différences entre les variables d'environnement du bash de départ et celles du sh lancé par at :

      $ env | sort > env_bash.txt
      $ echo "env | sort > env_sh.txt" | at now
      $ diff env_sh.txt env_bash.txt
      5a6
      > DISPLAY=:0
      23d23
      < OLDPWD=/
      30a31
      > SHELL=/bin/bash
      34a36
      > TERM=xterm-256color
      35a38
      > _=/usr/bin/env
      

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.