1、前台进程与后台进程
前台进程:在shell提示处打入命令后,创建一个子进程,运行命令,shell等待命令退出,然后返回到对用户给出提示符。这条命令与shell异步运行,即在前台运行,用户在它完成之前不执行另一个命令。
后台进程:在shell提示出打入命令,若后随一个&,shell创建的子进程运行此命令,但不等待命令退出,而直接返回到对用户给出提示。这条命令与shell同步执行,即在后台运行。后台进程必须是非交互式的。
2、查看用户信息w
a、查看个别用户信息:w 用户名
b、w显示信息的含义
1)JCPU:以终端代号来区分,该终端所有相关的进程执行时,所消耗的CPU时间会显示在这里
2)PCPU:CPU执行程序耗费的时间
3)WHAT:用户正在执行的操作
4)load average:分别显示系统在过去1、5、15分钟内的平均负载程度。
5)FROM:显示用户从何处登陆系统,“:0”的显示代表该用户是从x window下,打开文本模式窗口登陆的
6)IDLE:用户闲置的时间。这是一个计时器,一旦用户执行任何操作,该计时器便会被重置
3、常用选项
1)a:(all)显示所有用户的进程
2)u:显示用户名和启动时间
3)x:显示没有控制终端的进程
4)e:显示所有进程,包括没有控制终端的进程
5)l:长格式显示
6)w:宽行显示,可以使用多个w进行加宽显示
4、查看系统中的进程ps
ps常用输出信息的含义
1)PID:进程号
2)PPID:父进程号
3)TTY:进程启动的终端
4)STAT:进程当前状态(S休眠,D不可中断的休眠,R运行状态,Z僵死状态,T停止)
5)NI:进程优先级
6)TIME:进程自从启动以来启用CPU的总时间
7)COMMAND/CMD:进程的命令名
8)USER:用户名
9)%CPU:占用CPU时间和总时间的百分比
10)%MEN:占用内存与系统内存总量的百分比
ps应用实例
#ps 查看隶属于自己的进程
#ps -u or -l 查看隶属于自己进程详细信息
#ps -le or -aux 查看所有用户执行的进程的详细信息
#ps -aux --sort pid 可按进程执行的时间,PID,UID等对进程排序
#ps -aux | grep sandy
#ps -uU sandy 查看系统中指定用户执行的进程
#ps -le | grep init 查看指定进程信息
5、杀死进程 kill
1)关闭进程:kill 进程号
2)强行关闭:kill -9 进程号
3)重启进程:kill -1 进程号
4)关闭图形程序:xkill(centos里GNOME下鼠标会变成一个骷髅~_~)
5)结束所有进程:killall
6)查找服务进程号:pgrep 服务名称
7)关闭进程:pkill 进程名称
6、nice和renice
nice:
1)指定程序的运行优先级
2)格式:nice -n command
3)范例:nice -5 myprogram
renice:
1)改变一个正在运行的进程的优先级
2)格式:renice n pid
3)范例:renice -5 777
!优先级取值范围为(-20~~~19)
7、nohup
使进程在用户推出登陆后仍旧继续执行,nohup命令将执行后的数据信息和错误信息默认存储到文件nohup.out中。格式:nohup program &
8、top
作用:进程状态显示和进程控制,每5秒自动刷新一次(动态显示)
常用选项:
d:指定刷新的时间间隔
c:显示整个命令行而不仅仅显示命令名
u:查看指定用户的进程
k:终止执行中的进程
h or ?:获取帮助
r:重新设置进程优先级
s:改变刷新的时间间隔
W:将当前设置写入~/.toprc文件中
9、计划任务
命令:at、batch、crontab
1)at:安排一个或多个命令在指定时间运行一次
at [-f 文件名] 时间
at -d or atm 删除队列中的任务
at -l or atq 查看队列中的任务
2)指定时间的方式
midnight noon teatime
hh:mm [today]
hh:mm tommorrow
hh:mm 星期
hh:mm MM/DD/YY
now + n minutes
now + n hours
now + days
3)batch命令作用与at相同,但是系统会安排在一个负载较轻时运行一次。
4)crontab:用于生成与cron进程所需要的crontab文件
格式:crontab {-l|-r|-e}
-l 显示当前的crontab
-r 删除当前的crontab
-e 使用编辑器编辑当前的crontab文件
命令格式:minute hour day-of-month month-of-year day-of-week
范例:#crontab -e
55 17 * * 1-5 /usr/bin/wall</etc/motd
0 18 * * 1-5 /sbin/init 5
0 0 1,15 * 1 /bin/cp -R /etc/backup/etc.0111
*crontab文件建立好了以后可以到/var/spool/cron目录确认
注意:选项不能为空,必须填入,不知道的值用*表示任何时间
每个时间字段都可以指定多个值,不连续的值用“,”间隔,连续的值用“-”间隔
命令应该给出绝对路径
用户必须具有运行所对应的命令或程序的权限