Arc*_*oob 38
我想看看我创建的一个会话中发生了什么。
据我所知,您可以使用以下命令查看您的tmux会话列表
tmux list-sessions查看当前正在运行的会话tmux。
要实际查看这些会话中正在运行的内容,您必须附加到特定会话,为此您有两个选择(根据经验)。
如果您当前没有运行tmux会话(或当前不在tmux会话中),您可以通过运行进行连接tmux attach -t n(其中 -t 代表目标会话,n 代表该会话编号)。
如果您在另一个 tmux 会话中运行,您将在尝试连接到另一个会话时遇到错误,因此查看正在运行的内容的最简单方法是使用该tmux list-windows -a命令,然后移动您运行任务的任何窗格/窗口。
移动窗口
使用tmux move-window -s n1 -t n2(-s == 源窗口,-t ==源窗口将附加到的目标窗口。n1 == 您要移动的窗口的编号,n2是您要移动到的窗口的编号)。
在N1和N2号排序/格式化为sessionNumb:windowNumb。所以第一个窗口中的第一个会话将是 0:1,第一个窗口中的第二个会话将是 1:1。
注意:n2必须是一个尚未创建窗口的可用会话。如果您将窗口移动到已创建的窗口,您将收到一条错误消息,指出“目标窗口不是空的”,而移动到未创建的会话将出现错误“找不到会话 n”。
有时在一个窗口中您可能有许多窗格,而您只需要移动一个窗格,如果您只需要在当前窗口内移动该窗格(因为您不能在另一个窗口内移动一个窗口),这会很有帮助。
您在移动窗口时使用几乎相似的语法,但您确实这样做了tmux move-pane -s *n1* -t *n2*。
当N1现在被格式化为sessionNumb:windowNumb.paneNumb等为N2。
在tmux list-windows -a你会有这样的事情之后
0:1: Project- (4 panes) [177x48]
0:2: Mirror (3 panes) [177x48]
0:3: Chat! (1 panes) [177x48]
0:4: ssh* (1 panes) [177x48]
1:1: zsh (2 panes) [176x45]
1:2: zsh* (1 panes) [176x45]
1:3: zsh- (1 panes) [176x45]
Run Code Online (Sandbox Code Playgroud)
现在,将窗口“聊天”从第一个会话移动到我必须运行的第二个会话tmux move-window -s 0:3 -t 1:4(记住不能将窗口移动到已创建的窗口)。
如果您只需要移动一个窗格,那么您需要这样做,tmux list-panes -a或者如果您已经知道它来自哪个窗口,您可以tmux list-panes -t 0:1 查看上面的格式说明。
结果显示会话 0 窗口 1 (-s 0:1) 具有这些窗格。
1: [177x34] [history 3/10000, 4119 bytes] %7 (active)
2: [88x13] [history 541/10000, 231972 bytes] %8
3: [88x13] [history 2/10000, 1541 bytes] %9
Run Code Online (Sandbox Code Playgroud)
这是不可接受的,但是如果您需要查看更多信息以便知道您真正需要哪个窗格,您可以做
tmux list-panes -F "#{pane_current_command}" -t 0:1
这将在每个窗格中显示当前运行的命令。
就我而言
vim
zsh
python (sadly it's running `ranger`)
Run Code Online (Sandbox Code Playgroud)
因此,在确定您想要的窗格(比如 vim 的窗格)后,您需要移动它。
tmux move-pane -s 0:1.1 -t 1:1.2在这种情况下移动到特定窗格2
如果目标窗口中只有一个窗格,则不能tmux move-pane -s 0:1.1 -t 1:1.没有目标窗格,它仍然可以工作。
| 归档时间: |
|
| 查看次数: |
41879 次 |
| 最近记录: |