我正在尝试在 tmux-session 中创建一个新窗口并将其拆分(之后我希望能够在拆分窗口中执行一些命令)。因此,我想使用new-window
,根据手册页,它应该支持类似new-window 'vi /etc/passwd'
.tmux new-window
在现有会话中执行效果很好。
不幸的是,当我打开 tmux 并运行tmux new-window 'tmux split-window'
或 时tmux new-window 'echo test'
,该命令根本没有执行。其他参数,就像tmux new-window -c "~"
预期的那样工作。一个小小的解决方法,nameley usingtmux new-window -t 4 && tmux split-window -t 4
确实有效,但需要一个索引。
为什么不能分割窗格或只给它一个要执行的命令?
答案1
从命令行尝试:
tmux new-window \; split-window
tmux new-window 'echo test'
您的命令未按预期工作的原因是,默认情况下 tmux 在完成shell-command
.要亲自看看,请尝试一下tmux new-window top
。确实存在一个 tmux 选项remain-on-exit
,据说可以在每个会话或每个窗口的基础上设置,但我还没有成功使用它。有关详细信息,请参阅手册页。
答案2
您可以尝试使用tmux
快捷方式。从前缀开始tmux
,通常Ctrl + b
是:
%
用于垂直分割
"
用于水平分割。
要交换窗格,请使用o
或 箭头。