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?

utilisateur32085
la source

Réponses:

49

Utilisation

gnome-terminal --working-directory=/path/to/dir
Kris Harper
la source
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
Isaïe
la source
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".

Donk
la source
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"
      
Savvas Radevic
la source
--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.

cnr437
la source
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 ..... ,,.

utilisateur32187
la source
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.

twister_void
la source
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
JohnA
la source