在 中screen
,我只需鍵入即可C-a :number 0
將視窗移至視窗清單的頂部,並將所有其他視窗向下推。的等效命令序列是什麼tmux
?我查看了手冊頁,但我發現它在這一點上令人困惑。
答案1
該swap-window
命令最接近您想要的。
「Prefix :」(預設為Ctrl+ B):會將您帶到 tmux 命令提示字元。在那裡你輸入:
swap-window -s 3 -t 1
讓 3 號窗口和 1 號窗口交換位置。
若要將目前視窗與頂部視窗交換,請執行下列操作:
swap-window -t 0
在不太可能的情況下,索引 0 處沒有窗口,請執行以下操作:
move-window -t 0
(如果基本索引為 0,則預設情況下)。指令預設move-window -t <NUMBER>
綁定到Ctrl+ B, .。
您可以透過新增下列內容將該指令綁定到一個鍵(例如,T 表示「top」)~/.tmux.conf
:
bind-key T swap-window -t 0
答案2
添加到 Gareth 的答案中,您可以使用以下鍵綁定
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1
按 Ctrl+Shift+Left(會將目前視窗向左移動。同樣向右移動。無需使用修飾符 (Cb)。
對於 tmux 3.0 版本,您應該使用以下鍵綁定
bind-key -n C-S-Left swap-window -t -1\; select-window -t -1
bind-key -n C-S-Right swap-window -t +1\; select-window -t +1
答案3
相當於的 tmux:number 42
是:move-window -t 42
.
答案4
您可以使用在和之間進行選擇的外部 shell 腳本來實現與screen
的命令等效的命令。您可以透過這種方式將其綁定到密鑰:number
swap-window
move-window
bind < command-prompt -p index "run-shell '~/.tmux.number.sh %%'"
~/.tmux.number.sh
:
#!/bin/bash
if [ $# -ne 1 -o -z "$1" ]; then
exit 1
fi
if tmux list-windows | grep -q "^$1:"; then
tmux swap-window -t $1
else
tmux move-window -t $1
fi