Comment lancer gnome-terminal sur un répertoire particulier?


38

J'ai essayé

gnome-terminal -x 'cd /path/to/dir'

et

gnome-terminal -e 'cd /path/to/dir'

mais les deux me donnent des erreurs lorsque le nouveau terminal s'ouvre. Comment faire en sorte qu'un nouveau terminal démarre dans un répertoire spécifique?

Réponses:


49

Utilisation

gnome-terminal --working-directory=/path/to/dir

1
Curieusement, cela ne semble pas fonctionner pour moi dans gnome-terminal 3.18.3 (Ubuntu 16.04). L'argument est accepté, mais Bash dans le nouveau terminal s'ouvre dans $ HOME.
Jonathan Hartley

1
Cela ne fonctionne plus dans Ubuntu 16.04, à cause d'un bogue: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154 Allez-y et cliquez sur "ceci me concerne aussi" si vous souhaitez le réparer. .
Jonathan Hartley

Dans les commentaires sur le bogue, une solution de contournement est spécifiée pour décocher "Exécuter une commande personnalisée au lieu de mon shell". Cela a fonctionné pour moi. Bien sûr, cela ne fonctionnera pas si la commande à exécuter est différente de celle de votre shell. Votre shell peut être changé avec chsh.
Owen

préférable avec "" gnome-terminal --working-directory = "/ path / to / dir"
Nicolas

1
@JonathanHartley Ce bogue a été corrigé pour Ubuntu 16.04.3 LTS fonctionnant sous le noyau 4.14.34-generic
WinEunuuchs2Unix

18

Ajoutez la ligne suivante à la fin de votre ~/.bashrc:

cd ~/public_html

Cette méthode désactivera "Ouvrir dans le terminal" à partir du menu contextuel dans un navigateur de fichiers. Il supposé ouvrir le répertoire courant dans un nouveau terminal. Mais cette commande vous redirigera toujours vers le répertoire ~ / public_html.
HD189733b

Pour contourner ce cd -problème, vous devriez accéder au répertoire de travail précédent afin que vous puissiez utiliser "open in terminal", votre bashrc vous renverrait immédiatement au répertoire choisi, puis cd -vous ramènerait au répertoire que vous vouliez ouvrir. Devrait marcher!
pbhj

5
sudo apt-get install nautilus-open-terminal 

Redémarrez Nautilus, cliquez avec le bouton droit de la souris sur n’importe quel répertoire et sélectionnez "Ouvrir dans un terminal".


4

Vous pouvez:

  1. Editez / créez le fichier ~/.bashrcet ajoutez cette ligne à la fin du fichier:

    alias cdx='cd /path/to/myfolder'
    

    Enregistrez la modification et déconnectez-vous / connectez-vous. Lorsque vous exécutez la commande "cdx", vous accédez au dossier spécifié.

  2. Vous pouvez créer un raccourci / lien qui exécutera cette commande:

    • Si vous utilisez gnome-terminal (ubuntu):

      gnome-terminal --working-directory="/full/path/to/myfolder"
      
    • Si vous utilisez lxterminal (Lubuntu):

      lxterminal --working-directory="/full/path/to/myfolder"
      

--working-directory ne fonctionne plus dans Ubuntu 16.04, à cause d'un bogue: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154 Veuillez vous y rendre et cliquez sur "ceci me concerne aussi" si vous " D comme ça réparé.
Jonathan Hartley

1
@ JonathanHartley Ce bogue a été corrigé pour Ubuntu 16.04.3 LTS fonctionnant sous le noyau 4.14.34-generic.
WinEunuuchs2Unix

2

vous pouvez ajouter le script nautile comme ça

Créez un fichier vide nommé "Open Terminal Here" dans

~/.local/share/nautilus/scripts/ # for Ubuntu 13.04 or above
~/.gnome2/nautilus-scripts/      # for Ubuntu 12.10 and below

annuaire.

Ouvrez-le et écrivez ces lignes à l'intérieur.

#!/bin/bash
gnome-terminal

Rendez-le exécutable, cliquez avec le bouton droit de la souris sur n’importe quel répertoire de Nautilus et sélectionnez "Scripts> Ouvrir le terminal ici" dans le menu.


1

Ouvrez "~ / .bashrc" Faites défiler vers le bas et ajoutez une commande de changement de répertoire Exemple: cd ~ / myfolder

Puis enregistrez et quittez. Le "~" vous mènera à votre dossier personnel (/ home / loginname)

Chaque fois que vous lancez votre terminal, il lit le fichier .bashrc afin que vous puissiez également y insérer des chemins de recherche ETC ..... ,,.


0
gnome-terminal --working-directory=/path/to/dir

comme

root45 a répondu

ou tu peux faire comme ça aussi

si vous démarrez gnome-terminal comme " gnome-terminal --working-directory=myfolder", il commencera par le répertoire de travail situé à ~/myfolder. afin que vous puissiez ajouter une nouvelle entrée à votre menu pour utiliser cette commande à la place de l'autre.


Ce n'est pas vrai tout le temps, si l'environnement n'est pas configuré pour ouvrir le terminal dans les utilisateurs, ~cela n'aura pas l'effet désiré, vous devrez utiliser le chemin d'accès complet au dossier. C'est correct dans le contexte actuel, mais pas tout le temps.
Bruno Pereira

C'est à partir d'ici (ce serait bien de donner crédit): stackoverflow.com/questions/844677/…
Volker Siegel

Cela ne fonctionne plus dans Ubuntu 16.04, à cause d'un bogue: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154 Allez-y et cliquez sur "ceci me concerne aussi" si vous souhaitez le réparer. .
Jonathan Hartley

0

Cela marche:

gnome-terminal --tab --title="your title" -- bash -c 'cd /path/to/dir && your_code' &

Quelques commentaires:

  • Ma version de gnome-terminal est:
$ gnome-terminal --version
# GNOME Terminal 3.28.1 using VTE 0.52.1 +GNUTLS -PCRE2
  • tout ce qui suit bash -c doit être entouré de guillemets simples
  • vous devez utiliser le "-c" pour l'option bash
  • je dois utiliser "-" même quand le doc dit utiliser "-x" ou "-e" (ceux-ci sont déconseillés
  • le "-tab" crée un onglet dans la fenêtre du terminal en cours
  • utilisez "-window" pour créer une nouvelle fenêtre de terminal
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.