用途:该技能用于在 Bash 工具中借助 tmux 管理多个并发进程,例如开发服务器、文件监听器或长时间构建任务。由于通常已运行在 tmux 会话内,可新建窗口或窗格处理这些任务,而不阻塞主通信通道。
主要能力与用法:
- 验证环境与查看状态。先执行 echo $TMUX 确认处于 tmux 中;若返回为空则命令不会按预期工作。随后可用 tmux list-windows 查看当前窗口。
- 派生后台进程。创建带名称的分离窗口:tmux new-window -n "server-log" -d;再向该窗口发送命令:tmux send-keys -t "server-log" "./start-dev-server.sh" C-m(C-m 模拟回车)。
- 检查输出。读取当前可见屏幕:tmux capture-pane -p -t "server-log";读取完整回滚历史:tmux capture-pane -p -S - -t "server-log"。
- 与进程交互。发送 Ctrl+C 中断:tmux send-keys -t "server-log" C-c;清理窗口:tmux kill-window -t "server-log"。
- 链式命令。可用带引号的 ';' 在单次调用中串联多个 tmux 命令,例如:tmux new-window -n "server-log" -d ';' send-keys -t "server-log" "./start-dev-server.sh" C-m。
适用场景:运行服务器、监听器、长时间构建等需要持续运行并可随时查看输出的任务。
限制:必须先处于 tmux 会话内,否则命令不会按预期工作;具体项目启动命令需自行替换。其他收费、平台或效果信息暂未提供。