Xshell关闭后仍能后台运行程序的nohup方法
nohup用法
你希望你的程序在后台运行。nohup命令可以将程序以忽略挂起信号的形式在后台运行,即使关闭当前的xshell,下次登陆进去的时候也是在运行的。
语法:
nohup 你要执行的命令
无论是否将nohup命令的输出重定向到终端,nohup命令执行的输出结果都会写入到当前目录的nohup. out文件中如果当前目录的nohup. out文件禁止写入数据,nohup的命令结果会自动输出到$HOME/ nohuo . out文件中。
- nohup直接加上要执行的命令,即使你的终端关闭,程序也会再后台继续运行
[root@chaogelinux ~]# nohup ping baidu.com
之后会给出提示:
nohup:忽略输入并把输出追加到" nohup.out"
#注:输出结果会写入到当前目录的nohup. out文件中,但是程序会卡在前台!
#关闭终端,命令不会挂掉,进程还会一直在运行,直到进程被杀死
- 一般使用nohup不会敲完命令后,直接关闭窗口,而是希望能够继续运行命令行, 只需要在结尾加上一个&符号即可。(推荐)
nohup ping baidu. com &
- 不显示命令的执行结果,把ping进程的正确输出结果,以及错误输出结果,都写入到nohup.out文件中(推荐)
标准错误输出:2
标准输出:1
nohup ping www.pythonav.cn > nohup.out 2>&1 &
#把命令放在后台运行,且无论是正确的输出或是错误的输出,都直接扔进垃圾站(linux的黑洞文件), 直接销毁。
nohup ping www.pythonav.cn > / dev/null 2>&1 &
观察结果和过程
- vim直接查看nohup.out文件
vim nohup.out
- cat查看
cat nohup.out
- more 查看:空格是滚动一个屏的大小,=是显示当前行号,q是退出。
分屏显示文件内容:
more nohup.out
- 可以实时观察过程,特别好用:
想暂停刷新,使用【Ctrl】+【S】暂停刷新。
若想继续终端,使用【Ctrl】+【Q】。
若想退出tail命令,直接使用【Ctrl】+【C】。
tail -f nohup.out
观察进程情况之top用法
直接输入top:进入top命令后,按下q指令表示quit,退出top
#top的实际使用:进入top命令后,输入数字1指令,表示查看Linux的逻辑cpu个数
#按照内存使用情况排序:进入top后,输入大写的M指令,内存使用量,从大到小排序
#top显示进程的绝对路径:top -C#显示进程命令的绝对路径
#设置top进程刷新的时间:top -d 秒数
#设置top命令的刷新次数:top -n 3 #刷新3次后结束
#top指定进程,单独观察动态的资源信息:top -P pid
#指定某-列高亮显示输入:z,打开颜色;输入x,某一列高亮;输入b,某-列颜色加粗
< >左右移动
界面如下:
观察进程情况之htop用法
这个相比于top更好用,需要先下载安装:
sudo apt-get install htop
之后输入htop即可: