在linux系统中,生物软件的运行需要实时监控其状态,包括cpu和内存使用情况。当出现错误时,能够及时终止任务,并进行前后台切换和暂停操作是非常重要的。
本文将介绍一些关键命令,帮助您更好地管理Linux系统中的进程。
1 查看进程
进程查看可以使用top和ps命令。其中,top命令可以动态查看进程状态,而ps命令则提供静态快照,方便其他程序捕获和处理结果。
Linux系统中,进程的状态包括运行(R)、中断(S)、不可中断(D)、僵死(Z)和停止(T),每种状态都有其特定的含义。
命令:top
top命令可以动态显示系统进程的使用情况,类似于Windows系统的任务管理器。它可以显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率和CPU占用率等。
top #按 "q" 退出,查看系统运行状态top -b #按 "Ctrl + C" 退出top -ctop -u "yourname"

top命令结果详解:
USER进程的所有者PID进程ID号%CPU运算器占用率%MEM内存占用率VSZ虚拟内存使用量(KB)RSS固定内存使用量(KB)TTY所在终端STAT进程状态START被启动的时间TIME实际使用CPU的时间COMMAND命令名称与参数
命令:ps
ps命令是另一个重要的进程管理工具,它可以显示某一时刻的进程快照。
ps -aux #显示进程信息,包括无终端的ps -ef #显示所有进程信息,连同命令行ps -aux --sort -pcpu | less #根据CPU使用升序排序ps -aux --sort -pmem | less #根据内存使用升序排序ps -aux --sort -pcpu,+pmem | head -n 10 #显示消耗CPU和内存前十名的用户
2 前后台切换
在Linux中,可以通过以下命令进行任务的前后台切换:
乾坤圈新媒体矩阵管家
新媒体账号、门店矩阵智能管理系统
17 查看详情
& #命令行任务放到后台sleep #休眠一定时间jobs #查看后台进程fg #切换到前台程序bg #切换到后台程序ctrl+z #暂停任务ctrl+c #终止任务
案例:
#1 后台运行200秒sleep 200 &sleep 300  查看任务jobs#3 任务1切换到前台fg 1#4 切换到后台ctrl+z暂停;bg 1;切换到后台运行;#5 任务2切换到前台并杀掉bg 2ctrl+c
3 任务管理
3.1 nohup 非挂起
nohup命令可以让程序在忽略挂起信号的情况下运行,输出信息不会显示到终端,而是附加到nohup.out文件中。
nohup sh scripts.sh &
3.2 切换为非挂起 disown
disown命令可以从当前shell的作业列表中移除作业,使其在shell退出后继续运行。
-h #标记作业,不接收SIGHUP信号-a #移除所有作业-r #移除运行中的作业
3.3 杀死任务 kill
kill命令用于终止进程,可以发送指定的信号给进程或工作。默认信号为15,如果进程忽略此信号,可以使用信号9强制终止。
kill -9 12000

4 screen
screen是一个全屏窗口管理器,可以在多个进程之间多路复用一个物理终端。使用screen可以创建多个窗口,每个窗口就像一个独立的终端连接。
4.1 选项参数
$ screen --helpUse: screen [-opts] [cmd [args]]or: screen -r [host.tty]Options:-A:将所有的视窗都调整为目前终端机的大小。-d:将指定的screen作业离线。-h:指定视窗的缓冲区行数。-m:即使目前已在作业中的screen作业,仍强制建立新的screen作业。-r:恢复离线的screen作业。-R:先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。-s:指定建立新视窗时,所要执行的shell。-S:指定screen作业的名称。-v:显示版本信息。-x:恢复之前离线的screen作业。-ls:显示目前所有的screen作业。-wipe:检查目前所有的screen作业,并删除已经无法使用的screen作业。
4.2 快捷键
使用screen时,常用的快捷键包括:
ctrl + a,d #暂离当前会话ctrl + a,c #在当前screen会话中创建一个子会话ctrl + a,w #子会话列表ctrl + a,p #上一个子会话ctrl + a,n #下一个子会话ctrl + a,0-9 #在第0窗口至第9子会话间切换
4.3 使用案例
利用screen不间断下载生物数据的案例:
#1 新建会话,命名为wgetscreen -S wget#2 运行命令wget -c ftp://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/swissprot.gz#3 按ctrl+a,然后字母d,退出会话,任务仍在运行$ screen -S wget[detached from 283349.wget]#4 screen -ls查看任务$ screen -lsThere is a screen on: 283349.wget (Detached)1 Socket in /var/run/screen/S-wangtong.#5 重新进入wget终端,任务正在运行$ screen -r wget#6 关闭会话任务,如果在会话中使用exit,就会在退出会话,也关闭了该会话,或者按ctrl+a,k# screen ls查看会话$ screen -r wget[screen is terminating]
通过这些命令和工具,您可以有效地管理和监控Linux系统中的生物软件运行状态,确保其稳定运行。
以上就是Linux进程管理详细解读的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/481927.html
微信扫一扫
支付宝扫一扫