[RHCE033]unit11 调查和管理进程

一、调查进程
PID:进程ID用于标识进程
显示进程:
ps命令:默认显示信息非常简单仅仅显示当前终端进程
参数:
a----包括所有终端的进程
x----包括不属于任何终端的进程
u----显示出进程的拥有人
f----显示进程的出处
o----显示定制信息
pstree:显示进程树
ps是静态显示进程信息
top则是动态的显示进程信息类似windows中的进程管理器
pgrep:显示指定ps信息
-U:显示一个用户所用的全部进程
-G:显示一个组所用的全部进程
pidof:显示一个程序所用的全部进程
二、管理进程
关闭进程:
kill [-signal] pid:正常杀死某进程(通过pid来指定具体进程)
默认信号为15
kill -9 pid:强制杀死某进程----会产生大量的垃圾
信号1:重新读取配置文件,可以不重启进程
通过man 7 signal来查看信号代码、信号数字以及它们的具体含义
killall [-signal] comm:根据名字来杀死隶属于一个程序的全部进程
pkill [-signal] pattern:pkill既可以接Pid又可以接程序名称
进程的优先级:
查看进程的优先级:ps -o comm,nice
进程优先级是使用nice来表示的,优先级取值范围-20到19,数字越小优先级越高。缺省值为0。
修改进程优先级:
程序运行前:nice -n 5 command
程序运行后:renice 5 PID
注意:仅root用户能把优先级调高(也就是把优先级的值调低),普通用户只能把优先级调低(也就是把优先级的值调高)。
gnome-system-monitor:进程管理的图形界面显示(top的图形显示)
工作控制:
&:将一个进程送入后台运行(运行程序前)
比如:firefox &
后台运行firefox程序
使用命令jobs来查看后台运行程序
状态:
stopped:暂停状态
done:完成
running:正在后台运行
使用命令fg将所有后台程序(包括暂停的)弄到前台
crtl+z:程序运行之后挂起(暂停程序)----等于发送信号19(与信号17一样)给系统
crtl+c:中断程序
kill [-signal] [%jobnum]:终止某个后台程序(ctrl+c只能中断前台程序或者默认后台程序,无法随意中断,而kill可以根据jobnum来随意
中断特定后台程序,而且ctrl+c是强制中断会产生大量的垃圾文件,kill可以根据信号的不同执行不同的中断请求)
bg [%jobnum]:激活后台暂停的工作(由jobnum来指定需要激活的工作,与fg不同的是只在后台激活)
fg [%jobnum]:将后台暂停的工作激活并放入到前台。
定制计划任务:
一次工作:at,仅此一次
格式:at time回车然后输入你想要在什么时候执行的命令或脚本(当执行多个命令时最好先将其写成脚本然后在特定时间执行该脚本)
at -l:显示计划任务列表
at -c jobnum:显示某指定任务细节
at -d jobnum:删除某指定任务
at无法编辑只能删除重做
周期工作:crontab,循环多次
crontab -e:没有时创建一个周期计划,有时是编辑一个存在的周期计划
crontab计划文件的格式:分 时 日 月 周
分:0-59
时:0-23
日:0-31
月:0-12
周:0-6(0=Sunday)
*:匹配所有
crontab能自动识别脚本或命令语法错误。
-:表示范围
,:表示一个单一特定的时间或日期
/n:表示每隔n个单位间隔
注意:如果你写完计划任务但是不凑巧时间过了执行计划任务那么他将延后下一轮执行
组命令:
():用括号将执行的多个命令括起来这样就成了一组命令。
退出状态:
$?:用于查看前面进程退出时的状态,成功(值为0)或失败(值为若干,范围1-255),因为成功只有一种原因而失败却有n种原因。
命令连接符号:
&&:and(且)
格式:command1 && command2
意义:如果command1成功执行command2,如果command1不成功则不执行command2
||:or(或)
格式:command1 || command2
意义:如果command1成功则不执行command2,如果command1不成功执行command2
测试命令:
test:
实例:
A=123
B=456
test "$A" = "$B"
echo $?
1
返回值1则是测试失败
返回者0则是测试成功
返回值使用echo $?查看
test还可以测试文件的属性
比如测试一个文件是否是可执行文件,或者测试一个文件是否是目录文件等等
if函数的应用:
if.....
elif....
else....
fi
解释:如果满足条件则执行elif中的内容如果不满足则执行else中的内容,fi表示if函数结束。

本文出自 “networker” 博客,谢绝转载!

你可能感兴趣的:(linux,基础,操作系统,休闲,rhce)