Exécuter une commande à chaque ouverture du terminal

19

Je suis sur Ubuntu 13.04 et j'aimerais configurer mon terminal, de sorte que chaque fois qu'un nouvel onglet / fenêtre est ouvert, il exécute automatiquement et immédiatement la commande suivante.

 /bin/bash --login

Comment pourrais-je y parvenir? Sur OSX avec iTerm 2, il existe une option pour exécuter une commande au démarrage. Je suppose que je devrais y parvenir grâce à une sorte de fichier dot ...

si __name__ est Aucun
la source
Pourquoi veux-tu faire cela? Lorsque vous ouvrez un nouveau terminal, cette commande est déjà exécutée.
Spack
Non ce n'est pas. J'en ai besoin à cause d'un bug dans un environnement de développement que j'utilise. Le --logindrapeau est crucial.
si __name__ est None

Réponses:

21

Ajoutez la commande à votre ~/.bashrc. Techniquement, vous devriez être en mesure d'ajouter ~/.profileainsi, à partir man bash, INVOCATIONdocumentation:

Si bash est appelé avec le nom sh, il essaie d'imiter le comportement de démarrage des versions historiques de shaussi près que possible, tout en se conformant également à la norme POSIX. Lorsqu'il est appelé en tant que shell de connexion interactif ou shell non interactif avec l' --loginoption, il tente d'abord de lire et d'exécuter des commandes à partir de /etc/profileet ~/.profile, dans cet ordre.

Également:

Bash tente de déterminer quand il est exécuté avec son entrée standard connectée à une connexion réseau, comme lorsqu'il est exécuté par le démon shell distant, généralement rshd, ou le démon shell sécurisé sshd. Si bash détermine qu'il est exécuté de cette manière, il lit et exécute les commandes depuis ~/.bashrcet ~/.bashrc, si ces fichiers existent et sont lisibles.

Donc, cela signifie que si vous êtes connecté localement, vous devriez utiliser OK ~/.profile; mais, si vous utilisez des systèmes, vous voudrez utiliser ~/.bashrc. ~/.bashrcs'applique également lorsque vous êtes connecté localement; donc, il est juste devenu conventionnel de l'utiliser.


la source
3

Essayer:

  • Dans le terminal, Edition> Préférences> Titre et commande de l'onglet> Exécutez une commande personnalisée de mon shell .

entrez la description de l'image ici

Ou

  • gnome-terminal --tab -e "your command" pour ouvrir un nouvel onglet.

Plus d'informations: ManPage Gnome-terminal

stderr
la source
2
En fait, je vérifie juste le run command as login shellproblème résolu.
si __name__ est None