我的问题不太清楚,让我重新表述一下:
我已经设置了一个 launch_workspace.sh 来直接启动 tmux,并加载了 5 个不同的命令。这是我当前的内容:
#!/bin/sh
tmux new-session -d -s scube -n 'vim' "vim"
tmux new-window -t scube:2 -n 'server' "$SHELL -c 'script/rails server'"
tmux new-window -t scube:3 -n 'yard' "$SHELL -c 'bundle exec yard server --gems'"
tmux new-window -t scube:4 -n 'spork' "$SHELL -c 'bundle exec guard'"
tmux new-window -t scube:5 -n 'autotest' "$SHELL -c 'bundle exec autotest'"
tmux new-window -t scube:5 -n 'shell' "$SHELL"
tmux select-window -t scube:1
tmux -2 attach-session -t scube
问题是:我的 zsh ($SHELL beeing zsh) 启动了所述命令,但是当我按 Ctrl+C 其中任何一个时,它会关闭整个 zsh(因此我的 tmux 窗口)而不仅仅是返回到正确的 zsh 提示符。
有没有办法实现上述行为,即使用命令启动 zsh,并在命令失败时返回 zsh 提示符?
干杯
答案1
好的,我的错误,看起来这个问题已经得到解答了:调用 zsh,让其运行命令,然后进入交互模式而不是退出