2010-02-27 3 views
4

Existe-t-il un moyen de lancer un terminal gnome à partir de la ligne de commande (ie, en utilisant la commande/usr/bin/gnome-terminal) et de laisser le nouveau terminal hériter des variables d'environnement Était dirigé? Le scénario est donc:Comment lancer gnome-terminal depuis une ligne de commande et dupliquer des variables d'environnement?

  1. Ouvrez un terminal
  2. définirait des variables
  3. Définir des variables d'environnement
  4. de lancement d'un exécutable qui a besoin des variables et les variables d'environnement du terminal en cours dans un nouveau terminal

Pensées?

+0

Ceci est vraiment une question shell, pas une question gnome-terminal. Quelle coque utilisez-vous? –

+0

Tout cela se passe à partir du script shell AC (je suppose que vous pourriez mettre cela comme étape 1.5 - Exécuter le script shell AC qui effectue les actions suivantes) – Adam

Répondre

6

Ceci s'est avéré être un problème de gnome-terminal. Lors du lancement du terminal gnome, en spécifiant l'option --disable-factory fournit la directive suivante:

« Ne pas enregistrer avec le serveur de nom d'activation, et ne pas réutiliser un processus de terminal GNOME déjà en cours d'exécution » (homme gnome-terminal Page)

La spécification de cette option était nécessaire pour hériter de l'environnement du shell précédent.

1

Vous devez utiliser export par rapport aux variables de l'autre shell si vous souhaitez que les processus enfants en héritent.

+0

Ceci est dans le bon sens, sauf setenv doit être utilisé plutôt que d'exporter car il est ac shell. Cependant, j'ai toujours un problème. Si je suis dans un tsch et que je mets une variable d'environnement et que je passe à csh, ça fonctionne bien. Toutefois, si je suis dans csh, définissez une variable d'environnement et passez à tcsh (dans un nouveau terminal gnome), les variables d'environnement ne sont pas propagées dans tsch. Des pensées? – Adam

+0

Malheureusement, les obus en C ne sont pas vraiment ma force. Je fais beaucoup mieux avec les dérivés 'sh'. –

Questions connexes