GNU/Linux >> Znalost Linux >  >> Linux

Jak změnit počáteční adresář relace tmux?

Způsob, jak to udělat, je odpojit se od relace (^b d s výchozími klávesovými zkratkami) a poté, když se k němu znovu připojíte, zadejte jiný adresář. Při připojování k relaci použijte -c příznak k určení pracovního adresáře. Zde je příklad:

$ tmux list-sessions
tmuxwtfbbq: 3 windows (created Tue Apr  5 14:25:48 2016) [190x49]
$ tmux attach-session -t tmuxwtfbbq -c /home/chuck/new_default_directory

Toto nastavení zůstane zachováno – po resetování pracovního adresáře jej nebudete muset neustále zadávat pokaždé, když se znovu připojíte k relaci.

Pro pořádek, používám tmux verze 2.0 (i když si myslím, že na tom nezáleží - nenašel jsem nic o přidání -c možnost attach-session příkaz v protokolech změn, takže předpokládám, že tam už nějakou dobu je).


Chucksmashova odpověď je dobrá, ale lze ji také dosáhnout bez použití relace, pokud chcete. Příkaz attach-session je také k dispozici v příkazovém řádku tmux; a cílová relace může být specifikována jako "aktuální" relace pomocí tečky.

attach-session -t . -c /path/to/new/directory

Zde je návod, jak můžete změnit pracovní adresář relace tmux bez odpojení relace a bez nutnosti použití <prefix> stisknutí kláves:

(Možnost 1) Zadejte adresář na tmux příkazový řádek:

tmux command-prompt "attach -c %1"

...otevře příkazový řádek, poté zadejte požadovaný pracovní adresář ~/my/dir a stiskněte ENTER

(Možnost 2) Zadejte adresář na příkazovém řádku v podokně:

# Execute this in one of the shell panes of within your tmux session:
tmux command-prompt -I $PWD -P "New session dir:" "attach -c %1"

Při tomto přístupu je výzva pro nový adresář předem vyplněna aktuálním adresářem podokna, který spustil příkaz. $PWD samozřejmě můžete nahradit čímkoli jiným pokud prosím.

Chcete funkci shellu?

Toto jsem přidal do své inicializace shellu:

# Change the current directory for a tmux session, which determines
# the starting dir for new windows/panes:
function tmux-cwd {
    tmux command-prompt -I $PWD -P "New session dir:" "attach -c %1"
 }

Se všemi těmito možnostmi budou všechna budoucí nová okna začínat v daném adresáři.

Poznámka: attach , attach-session a a jsou všechny aliasy pro sebe. tmux command-prompt má mnoho dalších pravomocí, stojí za to si přečíst manuálovou stránku


Linux
  1. Jak změnit identitu systému Linux

  2. Jak nainstalovat R 3.3.1 do vlastního adresáře?

  3. Jak vytvořit nové okno v aktuálním adresáři v Tmux?

  1. Jak změnit výchozí prostředí v Linuxu

  2. Jak změním kořenový adresář serveru Apache?

  3. Jak cd do adresáře s tímto názvem -2 (začínající pomlčkou)?

  1. Jak změnit název hostitele na Ubuntu

  2. Jak změnit heslo root mysql

  3. Jak změním adresář v Git Bash pomocí Git pro Windows?