针对本人最近遇到的一个场景来,记录一下linux程序前后台切换运行的方法。
本人使用测试服务器作为vpn的客户端。登录外网环境,使之能够使用外网数据库。
由于vpn需要输入密码,这样就只能在输入密码后。转为后台运行。并且当退出链接测试服务器的终端后,vpn程序继续运行。
介绍一下相关命令
1 程序后台运行 #command &
2 查看此终端下的后台程序 #jobs
3 #fg %num 使jobs列表中的后台程序转为前台运行
4 #bg %num 使jobs列表中的后台程序变为运行状态,保持后台运行
5 Ctrl + z 是一个正在运行的前台程序转为后台运行
6 nohup command & 后台运行该程序,并且当终端退出后保持运行
命令介绍完了。我介绍一下我使用这些命令来达到我之前描述的功能
#nohup openvpn ******.openvpn ------首先使用nohup来运行该命令。由于没有接&符所以该命令为前台运行
#password: xxxxx -------之后输入密码,程序仍为前台
#Ctrl+z -------转为后台,转为后台后程序为停止状态
#jobs ------查看后台任务号
#bg %num ------将后台任务由停止变为运行, num为任务号
这样就结束了。可以由于是采用nohup 运行终端即使退出也不会影响到后台运行的程序。