1.进程和进程控制的概念
查看进程状态
w 查看个别用户的进程 w 用户名
JCPU:以中文代号区别该终端所有进程账号执行所消耗的cpu时间的显示
PCPU:cpu执行程序耗费的时间
WHAT:用户正在执行的程序
from;显示用户从何处登陆的
IDLE:用户闲置的时间
ps -aux
-a显示所有用户的进程
-u显示用户名和启动的时间
-x:显示没有控制终端的进程
ps -el
-e :显示所有进程,包括没有控制终端的进程
-l:长格式显示
PID:进程号
PPID:父进程的进程号
TTY:进程启动的终端
STAT:进程运行的状态
s:休眠 D不可中断的休眠状态
R:正在运行 Z;僵死状态 (没有父进程的子进程)
T:停止
NI:进程优先级
TIME:进程从启动以来占用cpu的总时间
eg:ps -aux --sort pid #按pid 对进程进行排序
ps -aux|grep xclock #使用管道输出关于xclock的进程信息
进程的挂起和恢复
杀死或重新启动进程
改变进程优先级
2.进程状态的查看与控制
杀死进程: kill 进程号
kill -s 信号 进程号 # 将信号发送给进程,可以杀死进程
kill -l #列出所有信号
killall 进程名(eg.cmd)#杀死所有与进程名有关的进程
xkill #点击任何图形界面后,会杀死这个图形进程
改变进程的优先级(-20到19)
nice -n command & #制定程序运行优先级(&表示在后台运行)
nice n pid #改变一个正在运行的进程的优先级
进程状态的更新:
top:进程状态显示和进程控制,默认是每5s钟自动刷新一次(动态的显示)
top -d 3 指定每三秒刷新一次
-c 显示整个命令行而不仅只是显示命令名
-q 立刻显示更新所显示的信息
进程的挂起与恢复:
进程转后台:ctrl+z或bg 标志号 (挂起) 如果开启时,可以在后面使用&
进程中断: ctrl+c
查看后台有多少进程:jobs
将后台的进程转到前台:fg 标志号
后台进程可以转到前台用kill杀死,
3一次性安排进程任务
at 安排作业在某一时刻执行一次
batch 安排作业在系统负载不重时执行一次
第一:开启 atd
service atd start
at 时间 #注意:在某个时间点执行某个程序(命令),一定要使用命令的全路径eg. cp为 /bin/cp(可用whereis查看命令的路径)
1绝对计时方法 midnight noon today H:M tomorrow H:M mm/dd/yyyy
2.相对计时方法 now +n minutes
now +n hours
now +n day
指定在今天下午5“30执行某个程序(假设现在是中午12:00,2009、9、16)
at 5:30pm
at 17:30
at 17:30 today
at now + 5 hours
at now +300 minutes
at 17:30 16.9.2009
at 17:30 9/16/2009
>/ bin/cp -r /root/* /home/xsphp
at -l或者atq 来查看任务
at -d或atrm 删除任务
使用命令文件
at -f 文件 时间点 #可以将命令写进一个文件,方便之后编辑
at < 文件 时间点
at的执行结果和配置文件
at的结果 通过邮件寄给提交这个命令的用户
at的配置文件,限制哪些用户可以使用at命令
/etc/at.allow
如果这个文件存在,那么只是列在此文件中的用户才可使用at命令,如果这个文件不存在则查/etc/at.deny
/etc/at.deny
如果这个文件存在,则在此文件中列出的用户都不能使用at命令
如果这两个文件都不存在,则只有root 用户可以使用at命令
如果两个文件都存在,而且均为空,则所有用户都可以使用at命令
4.周期性安排进程任务
1、使用service crond start(开启crond进程)
crond进程搜索crontab文件并放入内存
crondab文件即/var/spool/cron/目录下以用户名命名的文件
crond进程启动以后,它将首先检查是否用户设置了crontab文件,如果没有,转入"休眠"状态,释放系统资源
crond 进程每分钟醒来一次,查看crontab文件决定当前是否有需要执行的命令,命令执行结束后,任何输出都将作为邮件发送给crontab的所有者
crontab -e 使用编辑器编辑当前的crontab文件,当结束时会自动安装
crontab -l 在使用标准输出中输出显示当前的crontab
crontab -r 删除当前的crontab文件
由六部分组成
minute :一小时中的哪一分钟[0-59]
hour :一天中的哪个小时[0-23]
day of month :一个月中的哪一天[1-31]
month of year :一年的哪一个月[1-12]
day of week:一周中的哪一天[0-6]
commands:执行的命令。也可以使用命令的全路径/bin/cp不能是cp
这些项都不能为空。必须填入
如果用户不需要指定其中的几项,那么可以使用通配符号*表示任何时间,每个时间字段都可以指定多个值,它们可以用逗号间隔
命令应该给出绝对路径,用户必须具有运行所对应命令或程序的权限
/etc/cron.allow 同之前的at
/etc/cron.deny
查看进程状态
w 查看个别用户的进程 w 用户名
JCPU:以中文代号区别该终端所有进程账号执行所消耗的cpu时间的显示
PCPU:cpu执行程序耗费的时间
WHAT:用户正在执行的程序
from;显示用户从何处登陆的
IDLE:用户闲置的时间
ps -aux
-a显示所有用户的进程
-u显示用户名和启动的时间
-x:显示没有控制终端的进程
ps -el
-e :显示所有进程,包括没有控制终端的进程
-l:长格式显示
PID:进程号
PPID:父进程的进程号
TTY:进程启动的终端
STAT:进程运行的状态
s:休眠 D不可中断的休眠状态
R:正在运行 Z;僵死状态 (没有父进程的子进程)
T:停止
NI:进程优先级
TIME:进程从启动以来占用cpu的总时间
eg:ps -aux --sort pid #按pid 对进程进行排序
ps -aux|grep xclock #使用管道输出关于xclock的进程信息
进程的挂起和恢复
杀死或重新启动进程
改变进程优先级
2.进程状态的查看与控制
杀死进程: kill 进程号
kill -s 信号 进程号 # 将信号发送给进程,可以杀死进程
kill -l #列出所有信号
killall 进程名(eg.cmd)#杀死所有与进程名有关的进程
xkill #点击任何图形界面后,会杀死这个图形进程
改变进程的优先级(-20到19)
nice -n command & #制定程序运行优先级(&表示在后台运行)
nice n pid #改变一个正在运行的进程的优先级
进程状态的更新:
top:进程状态显示和进程控制,默认是每5s钟自动刷新一次(动态的显示)
top -d 3 指定每三秒刷新一次
-c 显示整个命令行而不仅只是显示命令名
-q 立刻显示更新所显示的信息
进程的挂起与恢复:
进程转后台:ctrl+z或bg 标志号 (挂起) 如果开启时,可以在后面使用&
进程中断: ctrl+c
查看后台有多少进程:jobs
将后台的进程转到前台:fg 标志号
后台进程可以转到前台用kill杀死,
3一次性安排进程任务
at 安排作业在某一时刻执行一次
batch 安排作业在系统负载不重时执行一次
第一:开启 atd
service atd start
at 时间 #注意:在某个时间点执行某个程序(命令),一定要使用命令的全路径eg. cp为 /bin/cp(可用whereis查看命令的路径)
1绝对计时方法 midnight noon today H:M tomorrow H:M mm/dd/yyyy
2.相对计时方法 now +n minutes
now +n hours
now +n day
指定在今天下午5“30执行某个程序(假设现在是中午12:00,2009、9、16)
at 5:30pm
at 17:30
at 17:30 today
at now + 5 hours
at now +300 minutes
at 17:30 16.9.2009
at 17:30 9/16/2009
>/ bin/cp -r /root/* /home/xsphp
at -l或者atq 来查看任务
at -d或atrm 删除任务
使用命令文件
at -f 文件 时间点 #可以将命令写进一个文件,方便之后编辑
at < 文件 时间点
at的执行结果和配置文件
at的结果 通过邮件寄给提交这个命令的用户
at的配置文件,限制哪些用户可以使用at命令
/etc/at.allow
如果这个文件存在,那么只是列在此文件中的用户才可使用at命令,如果这个文件不存在则查/etc/at.deny
/etc/at.deny
如果这个文件存在,则在此文件中列出的用户都不能使用at命令
如果这两个文件都不存在,则只有root 用户可以使用at命令
如果两个文件都存在,而且均为空,则所有用户都可以使用at命令
4.周期性安排进程任务
1、使用service crond start(开启crond进程)
crond进程搜索crontab文件并放入内存
crondab文件即/var/spool/cron/目录下以用户名命名的文件
crond进程启动以后,它将首先检查是否用户设置了crontab文件,如果没有,转入"休眠"状态,释放系统资源
crond 进程每分钟醒来一次,查看crontab文件决定当前是否有需要执行的命令,命令执行结束后,任何输出都将作为邮件发送给crontab的所有者
crontab -e 使用编辑器编辑当前的crontab文件,当结束时会自动安装
crontab -l 在使用标准输出中输出显示当前的crontab
crontab -r 删除当前的crontab文件
由六部分组成
minute :一小时中的哪一分钟[0-59]
hour :一天中的哪个小时[0-23]
day of month :一个月中的哪一天[1-31]
month of year :一年的哪一个月[1-12]
day of week:一周中的哪一天[0-6]
commands:执行的命令。也可以使用命令的全路径/bin/cp不能是cp
这些项都不能为空。必须填入
如果用户不需要指定其中的几项,那么可以使用通配符号*表示任何时间,每个时间字段都可以指定多个值,它们可以用逗号间隔
命令应该给出绝对路径,用户必须具有运行所对应命令或程序的权限
/etc/cron.allow 同之前的at
/etc/cron.deny