it-swarm-eu.dev

Připojte se k různým oknům v relaci

Mám docela jednoduchou relaci tmux se dvěma otevřenými okny; jeden z nich pro místní hackování a jeden z nich pro práci.

Co bych chtěl udělat, je jednoduše se připojit k hackerskému oknu a ponechat pracovní okno otevřené v jiném terminálu. Jakmile se však připojím k tmuxu, všechny příkazy se odešlou do obou oken, takže pokud přepnu do jiného okna, totéž se stane v jiném terminálu a naopak.

Existuje způsob, jak se jednoduše připojit ke každému oknu samostatně?

122
Naftuli Kay

Důvodem, proč oba klienti přepínají okna současně, je to, že jsou oba připojeni ke stejné relaci („aktuální okno“ je atribut relace, nikoli klient). Můžete propojit jedno nebo více oken do několika různých relací. Protože každá relace má své vlastní „aktuální okno“, můžete v každé relaci samostatně přepínat okna.

Nejjednodušší způsob použití této funkce je použití funkce „seskupené relace“ v new-session příkaz:

$ tmux new-session -t 'original session name or number'

Zobrazení aktuálně dostupných relací:

$ tmux list-sessions

Každá relace ve skupině bude automaticky sdílet stejnou sadu oken: otevření/propojení (nebo uzavření/zrušení propojení) okna v jedné relaci skupiny automaticky způsobí, že stejné okno bude spojeno (nebo odpojeno) ve všech ostatních relacích skupina.

Až skončíte s „extra“ relací, můžete ji zabít pomocí kill-session. Samotná okna nebudou zabita, pokud vaše relace nebyla jediná, s níž byla spojena. Případně se můžete odpojit od „extra“ relace jako obvykle (předpona d nebo detach-client); pokud si stále udržujete svoji „extra“ relaci (jednoduše ji oddělujete), možná budete chtít pojmenovat popisný název (předpona $ nebo rename-session), abyste jej snadno identifikovali a znovu se k němu připojili později (můžete také chtít pojmenovat „původní“ relaci).


Pokud nechcete automaticky sdílet dynamickou sadu oken, můžete použít link-window (a unlink-window) přivést jednotlivá okna do (a mimo) své vlastní „osobní“ relace; to nabízí neautomatický a nižší přístup ke stejné základní funkci, na které jsou založeny „seskupené relace“ (okna jsou spojena do více relací).

162
Chris Johnsen