自学笔记,详细见Tmux详解
Problem:窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。
Method:会话与窗口使用tumx"解绑"
- 安装
sudo yum install tmux
- 进入tumx窗口
tmux
- 底部有一个状态栏。状态栏的左侧是窗口信息(编号和名称),右侧是系统信息。关注编号,用于后续重连接。
- Ctrl+d或者显式输入exit命令,可以退出 Tmux 窗口
- 在tumx窗口中正常进入虚拟环境,到待执行目录下创建运行的脚本.sh
vi my_script.sh
- 脚本范例,嵌套循环测试不同的参数:
#!/bin/bash
# 模型名称列表
models=("resnet18" "resnet34")
# 循环运行脚本
for model in "${models[@]}"; do
for blr in "${blr_values[@]}"; do
python run.py --model "$model"
done
done
- 添加执行权限:
chmod +x my_script.sh
- 执行脚本:
sh my_script.sh
- 关闭窗口后重新进入会话的指令, 直接在终端执行,不要在会话界面里开启新的会话 直接在终端执行,不要在会话界面里开启新的会话 直接在终端执行,不要在会话界面里开启新的会话0换成具体的会话编号:
tmux a -t 0
报错:
sessions should be nested with care, unset $TMUX to force
原因:
已经打开了一个tmux 会话,在这个tmux会话中试图打开另一个tmux会话。
处理方法:
退出当前会话,在命令行中直接运行进入会话的指令。