查看中止进程

描述基本进程和任务控制
在Solaris OE中运行的每个程序都会建立一个进程。系统启动进程被成为守护进程,守护进程在后台运行

并提供系统服务:如桌面登陆守护进程(dtlogin)提供用户登陆时的图形界面。

PID:系统分配给每个进程一个唯一的ID,称为PID;用户可以通过PID识别和控制进程。

UID及GID(用户ID和组ID)也与每个进程关联,它们用于指示进程的所有者及决定进程的运行许可。

理解父进程与子进程间的关系:子进程由父进程所建立,子进程运行时父进程等待,运行完成后父进程中

止子进程的运行![比如shell的运行,shell就算是个父进程]

1. 查看进程:
格式:ps -options
对于每个进程,ps命令都会显示PID(PID)、所在终端(TTY)、累计运行时间(TIME)、命令名称(CMD);
常用选项:
-e:显示每个进程的PID、TTY、TIME、CMD信息;
-f:增加UID、父进程号(PPID)、进程开始时间(STIME)的显示;
例:ps -ef查看系统所有运行进程的详细列表!
ps -ef中列表各项说明:
UID:进程所有者的用户名;
PID:进程唯一识别号;
PPID:进程的父进程识别号;
C:CPU使用率;(已废除)
STIME:进程开始时间(hh:mm:ss);
TTY:显示进程的控制终端;[注意:系统守护进程显示为“?”标志]!
TIME:进程累计运行时间;
CMD:命令的名称、选项和参数;

2. 查找指定进程:(两种方法)ps和grep的联合使用;单独使用pgrep命令。
(1) ps和grep联合式用(通过管道符):
例:ps -e | grep lp
(2) 单独使用pgrep命令:(默认下,pgrep 进程名 得到的结果只显示PID)
格式:pgrep -option(s) 进程名
常用选项说明:
-x:显示完全匹配关键字的进程的PIDs;
-n:显示匹配关键字的最近建立的那个进程的PID;
-U uid:显示属于指定用户的进程的PIDs(uid可以为具体的用户名或UID);
-l:显示PID对应的进程名称;
-t term:显示分配给指定终端的进程。
注:
查看指定的进程
ps -ef|grep os_process_id 
杀掉该进程
kill -9 os_process_id
重新查找

ps -ef|grep os_process_id
ps -ef|grep "oracle" 显示含有oracle字符串的进程。

grep "ora_" grep是匹配这行的字符串,也可以写该行的其他字符。

例如:zzyxora01:/# ps -ef|grep 1278326
  oracle 1278326 1389032 120 14:46:27      - 63:29 oraclezzdlyx1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
该例程启动时间是14:46:27,已用时:- 63:29 。

3. 发送一个信号给进程:一般使用kill或pkill命令给进程发送信号!
P212_表9-4:信号的号码及名称:
信号Number / 名称 / 事件 / 描述 / 反应
1 / SIGHUP / 挂起 / 放弃终端连接或让一些程序在不中止的情况下重新初始化 / 退出
2 / SIGINT / 中断 / 通常为使用键盘Ctrl+C发出的中断信号 / 退出
9 / SIGKILL / 杀死 / 杀死一个进程,进程无法忽略该信号 / 退出
15 / SIGTERM / 终止 / kill或pkill发出的默认信号,一些进程能忽略该信号 / 退出

4. 终止进程:
(1)使用kill命令:普通用户只能终止所有者为其自己的进程;root用户能终止任何进程!
格式:kill [-signal信号] PID(s)

一些进程能忽略kill默认发出的15信号,如一个进程如果在等待磁带机完成操作,那么就会忽略15信号;
当然可以发送信号9强制关闭对15信号无响应的进程:kill -9 PID

注意:除非处于必要,请谨慎使用kill命令发送信号9来结束程序;不然若用信号9结束控制数据路或文件

更新的进程,可能导致数据丢失!

(2)使用pkill命令:pkill [-options] process_name
[pkill命令默认也是发送信号15给进程,当然也可以强制发送信号9来结束进程]:
pkill -9 -x process_name

5. 在Korn shell中管理任务:(本节内容理解可能有误,请大家指正)!
任务也即进程,每个任务都拥有一个PID!
系统可管理三种类型的任务:前台任务、后台任务、已停止的任务;
前台任务:命令运行过程中占用终端窗口知道命令结束;
后台任务:命令后跟&号执行则运行时不占用终端窗口;
已停止任务:前台任务运行中按下Ctrl+Z或对后台任务使用stop命令,使任务停止。
常用任务控制命令:
jobs:显示当前运行或已停止的后台任务;
bg %n:在后台运行当前或指定的任务(n为job ID);
fg %n:把当前或指定的任务带到前台运行(n为job ID);
Ctrl+Z:停止前台任务并移至后台变为已停止任务;
stop %n:停止后台运行的任务(n为job ID);
注意:只能在shell中使用上述命令控制已启动的任务! 
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值