linux-shell(3) 后台命令【自己的笔记】

来源:互联网 发布:play for java 编辑:程序博客网 时间:2024/05/29 13:24
cron 系统调度进程。可以使用它在每天的非高峰负荷时间段运行作业,活在一周或一月中的不同时段运行。
At    at命令。使用它在一个特定的时间运行一些特殊的作业,或在晚一些的非负荷的高峰时间段或高峰负荷时间段运行。
&   适应它在后台运行一个占用时间不长的进程。
Nohup  使用它在后台运行一个命令,即使在用户退出时也不受影响。


crontab的域








举例 表示每晚的21:30运行/apps/bin目录下的cleanup.sh


30 21 * * * /apps/bin/cleanup.sh


举例 表示在每天的18:00至23:00之间每隔30分钟运行运行/apps/bin目录下的dbcheck.sh
0,30 18-23 * * * /apps/bin/dbcheck.sh


注意  脚本必须用绝对路径,如果cron不能运行相应的脚本,用户将会收到一个邮件说明其中的原因。


crontab 命令的一般形式为:


Crontab [-u user]  -e -l -r
其中:
-u      用户名
-e      编辑crontab文件
-l       列出crontab文件中的内容
-r      删除crontab文件




向cron进程提交一个crintab文件之前,先要设置环境变量EDITOR.


编辑$HOME目录下的.profile文件,在其中加入       EDITOR=view; export EDITOR


at命令允许用户向cron守护进程提交作业,


at 命令的基本形式为:




echo find /etc -name "passwd" -print | at now +1 minute


at -l     列出所有提交的作业


清除作业的命令格式为:
atrm [job no]at -r [job no]    
清楚流程


at -l    获取作业标识
atrm job 3 


&命令  后台执行
command(执行的命令)  >out.file(结果存放的文件名)  2>&1 &
提交后会返回一个进程号






用ps命令查看进程


ps x|grep  28305(进程号)


如果系统不支持ps x命令, 可以用:


ps -ef |grep 28305(进程号)


注意: 在用ps命令列出进程时,它无法确定该进程是运行在前台还是后台。




杀死后台进程 使用kill  该命令的基本形式






kill 28305(进程号)








nohup命令


如过当你退出账户时,某一个进程不随之结束,就可以使用nohup




使用nohup命令提交作业








小结


本章中所讨论的工具主要是有关后台运行作业的。有时我们必须要对大文件进行大量更改,或执行一些复杂的查找,这些工作最好能够在系统负荷较低时执行。
穿件一个定时清理日志文件或完成其他特殊工作的脚本,这样只要提交一次,就可以每天晚上运行,而且无需你干预,只要看看相应的脚本日志就可以了。 Cron和其他工具可以使系统管理任务变得更轻松。
0 0
原创粉丝点击