Linux 环境下程序不间断运行
|
新启动程序
|
nohup ./test.sh >log 2>&1 &
|
setsid ./test.sh >log 2>&1 &
|
|
已运行程序
|
nohup -p PID
|
disown -h %n
|
|
screen -S NAME
|
screen -S sxhlinux
|
新建一个名为sxhlinux的screen会话
|
|
screen -ls
|
screen -ls
|
查看当前系统中所有的screen会话
|
|
screen -d NAME
|
screen -d sxhlinux
|
将sxhlinux会话与当前shell终端分离
|
|
screen -r NAME
|
screen -r sxhlinux
|
在当前shell进程中与名为sxhlinux的进程重新连接
|
|
screen -R NAME
|
screen -R sxhlinux
|
同-r选项,另外如果sxhlinux不存在,
就会重新新建一个名为sxhlinux的screen会话
|
|
screen -x NAME
|
screen -x sxhlinux
|
多个终端同时操作名为sxhlinux的screen会话,操作同步可见
|
|
ctrl-a c
|
在当前会话中创建一个新的的shell窗口
|
|
ctrl-a n/p
|
切换到下/上一个窗口
|
|
ctrl-a d
|
使当前会话与原shell detach
|
|
ctrl-a w
|
列出当前会话中的所有窗口
|
|
ctrl-a k
|
关闭当前窗口
|
|
ctrl-a x/q
|
锁定、解锁当前窗口
|
|
ctrl-a [/]
|
[启动复制模式(vi操作习惯),第一次空格键表示开始复制,第二次空格表示结束复制;
]将[复制的内容粘贴到当前位置
|
|
ctrl-a S/|
|
将当前屏幕水平/垂直分成两部分,可以通过ctrl-a TAB来切换
|
|
tmux new -s NAME
|
tmux new -s sxhlinux
|
创建一个
|
|
tmux detach -s NAME
|
tmux detach -s sxhlinux
|
将sxhlinux会话分离
|
|
tmux attach -t NAME
|
tmux a -t sxhlinux
|
重新连接sxhlinux会话
|
|
tmux ls
|
tmux ls
|
列出当前所有的tmux会话
|
|
tmux lsc [-t NAME]
|
tmux lsc [-t sxhlinux]
|
列出所有[连接到sxhlinux]的客户端
|
|
tmux rename -t OLD NEW
|
tmux rename -t sxh sxhlinux
|
将会话sxh重命名为sxhlinux
|
|
tmux kill-session -t NAME
|
tmux kill-session -t sxhlinux
|
关闭sxhlinux会话
|
|
ctrl-a c
|
同screen
|
|
ctrl-a d
|
同screen
|
|
ctrl-a f
|
在当前会话所有打开的窗口中搜索文本
|
|
ctrl-a n/p
|
同screen
|
|
ctrl-a &
|
关闭当前窗口
|
|
ctrl-a x
|
关闭当前会话
|
set -g prefix C-a #配置快捷键前缀为ctrl a
unbind C-b #取消快捷键前缀ctrl b
unbind '%' #取消左右分pane的快捷键 %
bind | splitw -h #指定左右分pane的快捷键 |
bind k selectp -U #指定选择上方pane的快捷键 k
bind j selectp -D #指定选择上方pane的快捷键 j
bind h selectp -L #指定选择上方pane的快捷键 h
bind l selectp -R #指定选择上方pane的快捷键 l
- tmux-continuum插件要求tmux版本为1.9以上,目前CentOS 7 上的版本为1.8。 所以,需要我们去github的tmux项目中下载新版本的tmux替换系统中已有的老版本。
- 下载并安装tmux插件 git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
- 编辑 ~/.tmux.conf文件,并在最后追加如下内容
# Edit ~/.tmux.conf and added lines below at the bottom
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-restore 'on' # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm' - 执行 tmux new -s test 创建一个临时的session,然后在session中执行 ctrl-a I 组合键安装tmux-continuum。安装完成后ctrl-d结束当前session。至此continuum插件安装完成。
参考资料:https://github.com/tmux/tmux https://github.com/tmux-plugins/tpm https://github.com/tmux-plugins/tmux-continuum
Linux 环境下程序不间断运行的更多相关文章
- linux环境下jmeter安装和运行
linux环境部署: 在Linux服务器先安装jdk:2.以jdk-8u172-linux-x64.tar.gz为例:下载地址:http://www.oracle.com/technetwork/ja ...
- linux 环境下 eas console的运行
1)访问 http://<HOST>:19000/easconsole/ 2)然后下载 jnlp 文件. 3)找个jre, 用javaws 运行 jnlp文件
- 编写第一个Linux环境下程序的编译,下载记录
跟着韦东山学习Linux: 今天系统系统性的学了代码的编译下载,条记录一下: 一,代码:001_led_on.S,就把下面代码编译后Bin文件下载进2440处理器. /* * 点亮LED1: gpf4 ...
- Linux环境下安装JDK8
Linux环境下搭建Java项目运行环境,首先要安装JDK,安装JDK8的步骤如下: 1 下载JDK安装包 下载地址:http://www.oracle.com/technetwork/java/ja ...
- Linux环境下部署完JDK后运行一个简单的Java程序
前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...
- 针对 Linux 环境下 gdb 动态调试获取的局部变量地址与直接运行程序时不一致问题的解决方案
基础的缓冲区溢出实践通常需要确定运行状态下程序中的某些局部变量的地址,如需要确定输入缓冲区的起始地址从而获得注入缓冲区中的机器指令的起始地址等.在 Linux 环境下,可通过 gdb 对程序进行动态调 ...
- SAAS云平台搭建札记: (二) Linux Ubutu下.Net Core整套运行环境的搭建
最近做的项目,由于预算有限,公司决定不采购Windows服务器,而采购基于Linux的服务器. 一般的VPS服务器,如果使用Windows系统,那么Windows Server2012\2016安装好 ...
- 【ARM-Linux开发】Linux环境下使用eclipse开发C++动态链接库程序
Linux环境下使用eclipse开发C++动态链接库程序 Linux中也有类似windows中DLL的变成方法,只不过名称不同而已.在Linux中,动态链接叫做Standard Object,生成的 ...
- linux 环境下运行STS时 出现must be available in order to run STS
linux 环境下运行ECLIPSE时 出现 “ A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avai ...
随机推荐
- 如何安装 Composer
下载 Composer 安装前请务必确保已经正确安装了 PHP.打开命令行窗口并执行 php -v 查看是否正确输出版本号. 打开命令行并依次执行下列命令安装最新版本的 Composer: php - ...
- FORTH基本堆栈操作
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- yarn 淘宝源安装与使用用法
Yarn 淘宝源 yarn config set registry https://registry.npm.taobao.org -g yarn config set sass_binary_sit ...
- Hystrix-request collapsing(请求合并)
介绍: Hystrix的请求合并就是把重复的请求批量的用一个HystrixCommand命令去执行,以减少通信消耗和线程数的占用.Hystrix的请求合并用到了HystrixCollapser这个抽象 ...
- Log4j源码解析--Layout类解析
本文转载上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/07/04/382131.html.感谢作者的分享. Layout负责将Log ...
- 转-Determining whether a Computer Needs to be Rebooted
1 如何检查机器是否因为装了Windows更新而需要重新启动 2 Determining whether a Computer Needs to be Rebooted 3 How can I tel ...
- Linux 中su和sudo命令的几个注意点
1 su与su - 的区别 1.1命令说明 su对应是是no-login shell的方式进行账号登陆,命令行的变量配置还是切换账号前的变量. su-对应的是login shell的方式进行账号登陆, ...
- 关于flying框架
开发10多年了,开发过程中遇到的最大的问题: ①项目的代码越来越多了,越来越复杂了,而客户的需求,你还不得不往里面加入新代码. ②开发了很多项目,每次复用时却只能把代码copy来copy去,然后调试. ...
- nodejs环境设置理解
本小白今天忙了一下午,就为了设置好nodejs的环境变量. 其实理解了nodejs调用的过程就会发现环境变量的设置及其简单(当然,我是边安装边想的,不知我想的对不对) 首先,npm下载的模块分为全局模 ...
- Jenkins初识
Jenkins Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 功能 Jenkins功能包括 ...