Tmux启动脚本窗口未正确拆分

问题描述

我编写了一个启动脚本,用三个窗口创建一个新的 tmux 会话,其中一个窗口被垂直和水平分割:

#!/bin/bash
sV=awesome
tmux new -s "$sV" -n etc -d
tmux new-window -t "$sV":1 -n 'Email' "thunderbird"
tmux new-window -t "$sV":2 -n 'Firefox' "firefox"

tmux new-window -t "$sV":3 -n 'coding' "cd some-path"
tmux split-window -v
tmux split-window

tmux select-window -t "$sV":3
tmux -2 attach-session -t "$sV"

我的问题是仅创建了两个窗口(Firefox和拆分窗口),并且拆分窗口仅水平拆分了一次。除cd命令外,所有命令均已正确执行,我猜这是由于命名窗口不存在。

我对tmux相当陌生,所以我想我犯了一些非常明显的初学者错误。感谢您的帮助。

解决方法

tmux new-window -t "$sV":3 -n 'coding' "cd some-path"

cd是一个内置的shell,它不会停留在周围,当shell退出时,窗格将关闭。

您可以改为使用-c

tmux neww -t "$sV":3 -n 'coding' -c some-path