要进入一个新的 tmux
会话并在其中运行代码,你可以按照以下步骤操作:
步骤 1: 启动一个新的 tmux
会话
-
打开终端并输入以下命令启动一个新的
tmux
会话:tmux new-session -s <session_name>
其中,
<session_name>
是你为这个tmux
会话指定的名称。比如:tmux new-session -s my_session
如果没有指定会话名称,
tmux
会创建一个匿名会话,名称为0
。 -
执行此命令后,
tmux
会创建一个新的会话并进入该会话。此时你可以在tmux
中运行任何代码,比如:python my_script.py
代码将在这个会话中运行。
步骤 2: 分离(detach)并退出当前 tmux
会话
如果你希望代码继续在后台运行并退出 tmux
会话(保持代码运行),可以按下以下快捷键分离会话:
- 按下
Ctrl + b
,松开这两个键。 - 然后按下
d
键。
此时,你将会从 tmux
会话中退出,代码仍然会继续在后台运行。
步骤 3: 恢复 tmux
会话
如果你想恢复到刚才的会话并查看代码执行情况,可以使用以下命令:
tmux attach-session -t <session_name>
比如:
tmux attach -t my_session
如果你忘记了当前有多少个会话或会话名称,可以使用:
tmux ls
来查看所有活跃的会话。
步骤 4: 在 tmux
会话中执行其他操作
你也可以在一个 tmux
会话中创建多个窗格来同时运行多个命令,方法如下:
- 分屏(垂直):按下
Ctrl + b
,松开,接着按下%
,这将会分割出一个新的垂直窗格。 - 分屏(水平):按下
Ctrl + b
,松开,接着按下"
,这会分割出一个新的水平窗格。
使用这些分屏功能,你可以在同一个 tmux
会话中并行执行多个任务。
总结
- 创建新会话:
tmux new-session -s <session_name>
- 运行代码:在
tmux
会话中运行代码(例如:python my_script.py
) - 分离会话:按
Ctrl + b
然后按d
。 - 恢复会话:
tmux attach-session -t <session_name>
。
通过这些操作,你可以轻松进入 tmux
会话并运行代码,退出后代码仍然在后台运行,可以随时恢复会话查看结果。
在使用 tmux
进行任务执行时,即便关闭终端窗口,代码仍然会继续在后台运行。要查看正在运行的任务结果,可以通过以下步骤:
步骤 1: 恢复 tmux
会话
-
查看当前活动的
tmux
会话
打开一个新的终端窗口或连接到服务器,执行以下命令查看当前的tmux
会话:tmux ls
该命令会列出所有活动的
tmux
会话。例如,输出可能是:0: 1 windows (created Tue Oct 1 14:20:00 2024) [80x24] 1: 1 windows (created Tue Oct 1 15:00:00 2024) [80x24]
-
恢复
tmux
会话
假设你想恢复会话0
,执行以下命令:tmux attach-session -t 0
或者简写为:
tmux attach -t 0
这样你就可以恢复到原来的
tmux
会话,并查看代码执行结果。
步骤 2: 查看日志或输出文件
如果你在 tmux
会话内的代码执行时将输出重定向到了文件,你也可以直接查看输出文件,而不必恢复会话。
例如,在启动程序时将输出重定向到一个日志文件:
python my_script.py > output.log 2>&1 &
这样,所有输出都会被保存到 output.log
文件中。你可以在任何时候查看该文件的内容:
cat output.log
或者实时查看日志内容:
tail -f output.log
步骤 3: 列出和附加到后台 tmux
会话
如果你不确定当前会话是否仍然存在,或者想在后台恢复其他会话,可以使用:
tmux attach-session
如果有多个会话,tmux
会提示你选择会话。
通过这些方法,你可以恢复到正在运行的 tmux
会话,查看代码执行的结果,或者直接查看输出日志。