使用nohup命令 nohup命令可以将程序置于后台运行,并在用户退出后继续运行。它会忽略所有的SIGHUP信号,从而防止程序因用户注销而终止。 sh nohup ....SIGHUP信号而终止。.../my_script.sh & 使用tmux或screen工具 tmux和screen是两个流行的终端复用工具,它们可以创建一个持久的会话,在会话中运行的程序不会因为用户退出而终止。...可配置性强:tmux 的配置文件非常灵活,可以根据用户的需求进行定制。 示例:使用tmux运行程序并分离会话 sh tmux new-session -d -s my_session '....示例:使用screen运行程序并分离会话 sh screen -dmS my_session .
会话的一个重要特点是窗口与其中启动的进程是连在一起的。打开窗口会话开始;关闭窗口会话结束,会话内部的进程也会随之终止,不管有没有运行完成。...办法当前是有的,为了解决此问题,我们需要将会话与窗口进行解绑,使窗口关闭时会话并不终止,二是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口,而终端复用器软件(例如,Screen、Tmux (推荐...# 退出并关闭会话 exit weiyigeek.top-screen使用示例演示图 通过Screen,用户可以方便地管理多个终端会话,即使网络连接中断或终端窗口关闭,也可以随时恢复会话而无需重新启动命令...会话左右分窗格 tmux split-window -h # 退出会话 exit # 列出所有快捷键 tmux list-keys # 列出所有命令及其参数 tmux list-commands...工具快速上手图 总的来说,Tmux是一个强大的终端会话工具,可以大大提高在 Linux 系统下一个会话多终端操作的效率和便捷性,在企业运维中也是一个非常实用的工具。
创建 Tmux 会话 在终端中运行如下命令创建 Tmux 会话并附着进入: tmux 抑或, tmux new 一旦进入 Tmux 会话,你将看到一个 沉在底部的绿色的边栏,如下图所示。...image.png 这个绿色的边栏能很容易提示你当前是否身处 Tmux 会话当中。 退出 Tmux 会话 退出当前 Tmux 会话仅需要使用 Ctrl+b 和 d。...这种情况下,我们需要会话并赋予名称。譬如需要 web 相关服务的会话,就创建一个名称为 “webserver”(或任意一个其他名称) 的 Tmux 会话。...如此,你可以在多个会话中,轻易的区分应用程序的所在。 退出会话,轻按 Ctrl+b 和 d。...这将终止所有 Tmux 会话,并不会产生任何警告,即便会话存在运行中的任务。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。...若是网络中断或者上时间挂起,SSH 会话已经终止了,里面的进程也随之消失了。...为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。 tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。...按下’Ctrl+d或者显式输入exit命令,就可以退出 Tmux 窗口。 三、tmux会话管理命令 3.1 会话新建命令 第一个启动的 tmux 窗口,编号是0,第二个窗口的编号是1,以此类推。...3.2 分离会话 在 tmux 窗口中,输入命令就可以与当前会话与窗口分离。 tmux detach 上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。
终止后窗口会话也会终止,如果我们在办公环境回家后还希望能看到同样的窗口效果,默认的SSH会话窗口是不能完成的,这时我们就可以通过Tmux来管理窗口,它是一个多窗口的管理利器和它类似的功能还有Linux的...tmux 进入后效果如下。 image.png 通过快捷键ctrl+b 再输入d退出,或者输入exit命令来退出Tmux窗口环境。...Tmux会话管理 新建会话 退出会话 查看会话 && 杀死会话 接入会话 切换会话 重命名会话 会话快捷键 新建会话 创建一个新的窗口,其中-s后接窗口会话名字 tmux new -s 退出会话 在Tmux窗口中,输入ctrl+b 再输入d,或者用命令tmux detach来退出Tmux管理的窗口。...session-name> 重命名会话 tmux rename-session -t 0 会话快捷键 会话相关 Ctrl+b d:退出当前会话 Ctrl+b s:列出所有会话。
会话的一个特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会跟着终止,不管进程有没有运行完。 比如,SSH 登录远程计算机,打开一个远程窗口执行命令。...因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为了解决这个问题,会话与窗口可以 “解绑”:窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话 “绑定” 其他窗口。...Mac brew install tmux 2.2 启动与退出 输入 tmux 命令 tmux 启动 了一个Tmux 窗口,底部是一个状态栏。状态栏的左侧是窗口信息(编号和名称),右侧是系统信息。...按下 Ctrl+d 或者输入 exit 命令,退出 Tmux 窗口 exit ? ? 2.3 前缀键 Tmux 窗口有快捷键。所有快捷键都要通过前缀键唤起。...tmux detach //退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行 tmux ls //查看当前所有的 Tmux 会话 tmux list-session //查看某个
使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;是BSD实现的Screen替代品,相对于Screen,它更加先进:...通过将多个会话,窗口和窗格附加到tmux服务器,您可以组织工作流并轻松管理多个任务和流程。 安装tmux 使用您的发行版的软件包管理器安装tmux。...管理tmux Windows 当tmux会话启动时,默认情况下会创建一个窗口。可以将多个窗口连接到同一会话,并根据需要在它们之间切换。当您想要并行运行多个作业时,这会很有用。...再次按相同的组合可退出缩放模式 出口 关闭活动窗格 Prefix + x 强制在窗格中终止无响应的进程 管理tmux会话 有时甚至多个窗口和窗格都是不够的,您需要通过将布局分组到单独的会话中来逻辑地分离布局...再次按相同的组合可退出缩放模式 tmux kill-server 销毁所有会话并终止所有进程 创建tmux配置文件 当你对tmux感到满意时,你可能想要改变一些默认值。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。...因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。...它的用法是,在 Tmux 窗口中,先按下Ctrl+b,再按下?,就会显示帮助信息。 然后,按下 ESC键或q键,就可以退出帮助。...$ tmux detach 上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。 tmux ls命令可以查看当前所有的 Tmux 会话。...exit,但是这个是直接退出该session,在里面运行的程序是直接终止 crtl + b d 能够返回创建该session的窗口,但是session里面的程序还是在继续运行 tmux attach-session
打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。 一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。...因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为了解决这个问题,会话与窗口可以 "解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话 "绑定" 其他窗口。...install tmux 2.2 启动与退出 安装完成后,键入 tmux 命令,就进入了 Tmux 窗口。...它的用法是,在 Tmux 窗口中,先按下 Ctrl+b,再按下 ?,就会显示帮助信息。 然后,按下 ESC 键或 q 键,就可以退出帮助。...$ tmux detach 上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。 tmux ls 命令可以查看当前所有的 Tmux 会话。
打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。 一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。...因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。...install tmux 2.2 启动与退出 安装完成后,键入tmux命令,就进入了 Tmux 窗口。...它的用法是,在 Tmux 窗口中,先按下Ctrl+b,再按下?,就会显示帮助信息。 然后,按下 ESC 键或q键,就可以退出帮助。...$ tmux detach 上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。 tmux ls命令可以查看当前所有的 Tmux 会话。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。...因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。...install tmux 2.2 启动与退出 安装完成后,键入tmux命令,就进入了 Tmux 窗口。...它的用法是,在 Tmux 窗口中,先按下Ctrl+b,再按下?,就会显示帮助信息。 然后,按下 ESC 键或q键,就可以退出帮助。...$ tmux detach 上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。 tmux ls命令可以查看当前所有的 Tmux 会话。
打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。...tmux的主要用途就在于此。 tmux 解绑了会话和终端窗口。关闭终端窗口再打开,会话并不终止,而是继续运行在执行。将会话与终端窗后彻底分离。...# 启动命名tmux $ tmux new -s 底部不再是数字,而是命名的名字 例如: $ tmux new -s test 退出会话 按下Ctrl+d或者显式输入exit命令,就可以退出...挂起当前会话 r 强制重绘未脱离的会话 s 选择并切换会话;在同时开启了多个会话时使用 : 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 [ 进入复制模式...;此时的操作与vi/emacs相同,按q/Esc退出 ~ 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 $ 重命名当前会话 窗口操作 按键 含义 c 创建一个新窗口
打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。 Tmux 的作用 Tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。...$ brew install tmux 启动与退出 安装完成后,键入 tmux命令,就进入了 Tmux 窗口。...上面命令会启动 Tmux 窗口,底部有一个状态栏。状态栏的左侧是窗口信息(编号和名称),右侧是系统信息。 按下 Ctrl+d或者显示输入 exit命令,就可以退出 Tmux 窗口。...它的用法是,在 Tmux 窗口中,先按下 Ctrl+b,再按下 ?,就会显示帮助信息。 然后,按下 ESC 键或 q键,就可以退出帮助。...$ tmux detach 上面命令执行后,就会退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行。
如果你丢失了连接,或者你退出了 Shell 会话,后台进程将会被终止。...另外一个保证进程运行,直到 Shell 退出的方法就是使用nohup。 nohup命令后面跟着另外一个程序作为参数,将会忽略所有的SIGHUP(挂起)信号。...nohup: ignoring input and appending output to 'nohup.out' 如果你登出或者关闭终端,进程不会被终止。...Tmux Tmux 是一个现代化的 GNU 屏幕交互程序。通过 Tmux,你可以创建一个会话,然后再会话中打开多个窗口。...Tmux 会话是持久性的,这意味着即便你关闭了终端,这些 Tmux 上运行的程序依然会运行。
根据POSIX.1定义: 挂断信号(SIGHUP)默认的动作是终止程序。 解释 当终端接口检测到网络连接断开, 将挂断信号发送给控制进程(会话期首进程)....如果会话期首进程终止,则该信号发送到该会话期前台进程组....结论 因此当网络断开或终端窗口关闭后, 也就是SSH断开以后, 控制进程收到 SIGHUP 信号退出, 会导致该会话期内其他进程退出....只要是ssh 打开执行的一般命令,不是守护程序,无论加不加&,一旦关闭ssh,系统就会用SIGHUP终止....如何解决方案 在远端开启 tmux , 在 tmux 里运行程序, 此时运行的程序属于 tmux 的进程组, 不属于 ssh 进程组.
tmux通过开出窗口,分拆面板,接管和分离会话,能够让使用者在一个窗口内同时进行多项操作。...tmux在osx的安装方式:brew install tmux 基本格式 tmux [option] tmux new -s sessionName 创建新的session会话 tmux attach...-t sessionName 重新连接上某一个session tmux kill-session -t sessionName 杀死某个session tmux ls 显示所有会话 范例一:tmux new...-s mySession 创建一个名为mySession的会话 输入CTRL+b d将从此会话脱离,如果要重新连接,则使用tmux attach -t mySession 范例二:在范例一的mySession...基本格式 kill [params] [pid] 常用的是: kill -9 pid //强制终止 -1 Hup 终端断线 -2 INT 中断(同Ctrl+c) -3 QUIT 退出(同Ctrl+\)
tmux 是一个终端多路复用器:它允许从单个屏幕创建、访问和控制多个终端。 tmux 可能会与屏幕分离并继续在后台运行,然后重新连接。...回到原来的目录,跟刚才退出去的时候一模一样。...输入exit 就会退出 tmux session ,返回到原来的 terminal 页面。...在 tmux 会话中,使用前缀快捷键 ⌃b 配合以下快捷键可操作会话: ⌃b + $ 重命名当前会话 ⌃b + s 选择会话列表 ⌃b + d detach 当前会话,运行后将会退出 tmux 进程,返回至...状态栏更快速的识别窗口 id ⌃b + 0 切换至 0 号窗口,使用其他数字 id 切换至对应窗口。
窗口(window):一个会话中可以有多个窗口,,每个窗口都是一个独立的终端,并且你可以使用快捷键快速的进行切换. 窗格(pane):一个窗口可以分割为多个窗口,可以水平分割和垂直分割....下面是常用的命令记录: 会话操作 $ 重命名当前会话 s 选择会话列表 d detach 当前会话,运行后将会退出 tmux 进程,返回至 shell 主进程 在shell主线程里(非...tmux会话中)可以使用下列命令来操作会话. tmux new -s foo # 新建名称为 foo 的会话 tmux ls # 列出所有 tmux 会话 tmux a # 恢复至上一次的会话 tmux...在主目录下创建tmux配置文件,vim ~/.tmux.conf,并写入set -g mouse on....欢迎转载,烦请署名并保留原文链接。 联系邮箱:huyanshi2580@gmail.com ----
接下来,我们用简单易懂的语言介绍一下 Tmux 的基础使用方法,让你迅速上手这个强大的工具。快捷键快捷键是 Tmux 操作的核心,通过它们,你可以快速实现会话管理、窗格和窗口的操作。...会话管理会话(Session)是 Tmux 的顶层组织单位,每个会话可以包含多个窗口。...tmux启动与退出要开始使用 Tmux,只需打开终端并输入 tmux 来启动。...启动:直接在终端中输入 tmux。退出:可以使用 Ctrl + d 或者输入 exit 命令。会话管理会话让你能在单一窗口中管理多个项目或任务,非常适合多任务操作。.../etc/tmux.conf用户级配置文件 ~/.tmux.conf配置文件实际上就是 tmux 的命令集合,也就是说每行配置均可在进入命令行模式后输入生效将 Ctrl + r 设置为加载配置文件,并显示