Come posso avviare gnome-terminal in una directory particolare?


38

ho provato

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

e

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

ma entrambi mi danno errori quando si apre il nuovo terminale. Come posso avviare un nuovo terminale in una directory specifica?

Risposte:


49

Uso

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

1
Curiosamente, questo non sembra funzionare per me in gnome-terminal 3.18.3 (Ubuntu 16.04). L'argomento è accettato, ma Bash nel nuovo terminale si apre in $ HOME.
Jonathan Hartley,

1
Questo non funziona più in Ubuntu 16.04, a causa di un bug: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154 Per favore, vai lì e fai clic su "Anche questo mi influenza" se lo desideri risolto .
Jonathan Hartley,

Nei commenti al bug, viene indicata una soluzione alternativa per deselezionare "Esegui un comando personalizzato anziché la mia shell". Questo ha funzionato per me. Ovviamente, non funzionerà se il comando che devi eseguire è diverso dalla tua shell. La tua shell può essere cambiata con chsh.
Owen,

preferibile con "" gnome-terminal --working-directory = "/ path / to / dir"
Nicolas

1
@JonathanHartley Questo errore è stato corretto per Ubuntu 16.04.3 LTS in esecuzione con il kernel 4.14.34-generico
WinEunuuchs2Unix

18

Aggiungi la seguente riga alla fine del tuo ~/.bashrc:

cd ~/public_html

Questo metodo disabilita "apri nel terminale" dal menu di scelta rapida in un browser di file. Dovrebbe aprire la directory corrente in un nuovo terminale. Ma questo comando ti reindirizzerà sempre alla directory ~ / public_html.
HD189733b

Per ovviare a questo, cd -dovresti portarti alla precedente directory di lavoro in modo da poter usare "open in terminal", il tuo bashrc ti inoltrerebbe immediatamente alla directory scelta, quindi cd -ti riporterebbe alla directory che volevi aprire. Dovrebbe funzionare!
pbhj,

5
sudo apt-get install nautilus-open-terminal 

Riavvia nautilus, quindi fai clic con il pulsante destro del mouse in qualsiasi directory e seleziona "Apri in un terminale".


4

Puoi:

  1. Modifica / crea il file ~/.bashrce aggiungi questa riga alla fine del file:

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

    Salvare la modifica e disconnettersi / accedere. Quando si esegue il comando "cdx", si accederà alla cartella specificata.

  2. È possibile creare un collegamento / collegamento che eseguirà questo comando:

    • Se usi gnome-terminal (ubuntu):

      gnome-terminal --working-directory="/full/path/to/myfolder"
      
    • Se usi lxterminal (Lubuntu):

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

--working-directory non funziona più in Ubuntu 16.04, a causa di un bug: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154 Per favore, vai lì e fai clic su 'anche questo influisce su di me' se ' mi piacerebbe risolto.
Jonathan Hartley,

1
@JonathanHartley Questo bug è stato corretto per Ubuntu 16.04.3 LTS in esecuzione con il kernel 4.14.34-generico.
WinEunuuchs2Unix

2

puoi aggiungere nautilus-script così

Creare un file vuoto denominato "Apri terminale qui" in

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

directory.

Aprilo e scrivi queste righe all'interno.

#!/bin/bash
gnome-terminal

Renderlo eseguibile e fare clic con il tasto destro in qualsiasi directory di nautilus e selezionare "Script> Apri terminale qui" dal menu.


1

Apri "~ / .bashrc" Scorri verso il basso e aggiungi un comando change directory Esempio: cd ~ / myfolder

Quindi salva ed esci. "~" Ti porterà alla tua cartella home (/ home / loginname)

Ogni volta che avvii il tuo terminale legge il file .bashrc in modo da poter inserire anche percorsi di ricerca ETC ..... ,, in esso.


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

come

rispose root45

o puoi fare anche questo

se avvii gnome-terminal come " gnome-terminal --working-directory=myfolder", inizierà con la directory di lavoro su ~/myfolder. così puoi aggiungere una nuova voce al tuo menu per usare quel comando invece dell'altra.


Questo non è sempre vero, se l'ambiente non è impostato per aprire il terminale negli utenti, ~ciò non avrà l'effetto desiderato, sarà necessario utilizzare il percorso completo della cartella. È corretto nel contesto attuale, ma non sempre.
Bruno Pereira,

Da qui (sarebbe bello dare credito): stackoverflow.com/questions/844677/…
Volker Siegel

Questo non funziona più in Ubuntu 16.04, a causa di un bug: bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1587154 Per favore, vai lì e fai clic su "Anche questo mi influenza" se lo desideri risolto .
Jonathan Hartley,

0

Questo funziona:

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

Alcuni commenti:

  • La mia versione di gnome-terminal è:
$ gnome-terminal --version
# GNOME Terminal 3.28.1 using VTE 0.52.1 +GNUTLS -PCRE2
  • tutto dopo bash -c deve essere racchiuso tra virgolette singole
  • devi usare "-c" per l'opzione bash
  • devo usare "-" anche quando il documento dice di usare "-x" o "-e" (questi sono deprecati
  • il "-tab" crea una scheda nella finestra del terminale corrente
  • usa "-window" per creare una nuova finestra del terminale
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.