Linux_shell_后台执行命令

党在终端或控制台工作时,可能不希望由于运行一个作业(不是你在学校老师布置的作业)而占住了屏幕,因为可能还有更重要的事情要做,对于密集访问磁盘的进程,你可能希望它能够在每天的非负荷高峰时间段运行,为了使这些进程能够在后台运行,也就是说不再终端屏幕上运行,有几种选择方法提供使用。

 1.   设置crontab文件,并用它来提交作业

 2.  使用at命令来提交作业

 3.  在后台提交作业

 4.  使用nohup命令提交作业

名词解释:

1.cron  系统调度进程。可以使用它在每天的非高峰期时间运行作业,或在一周后或一月中的不同时间段运行

2.at      at命令 使用它在一个特地的时间运行一些特使的作业,或在晚一些的非负荷高峰时间段或高峰负荷时间运行

3.&        使用它在后台运行一个占用时间不长的进程

4.nohup 使用它在后台运行一个命令,即使在用户退出时也不受影响

 

1.crontab的域

第1列    分钟 1-59

第2列    小时  1-23(0表示子夜)

第3列    日    1-31

第4列    月    1-12

第5列    星期  0-6(0表示星期天)

第6列    要运行的命令

crontab格式:

分 时 日 月 星期 命令

在这些域中,可以用 “-” 表示一个时间范围 周一至周五(1-5) ,也可以使用 “,”例如 只希望周一和周三执行 (1,3)

可以用星号 *  来表示连续的时间段,如果对某个域没有设定 也要输入* 

示例(执行命令的shell脚本文件需是绝对路径,除了一些自动设置的全局标量):

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

上面命令表示 每晚21点30分执行/apps/bin目录下的cleanup.sh(只设定了分和时 其余都用* 来表示 说明在连续的日,月,周里的21:30分执行该命令 )

 

45 4 1,10,12 * * /apps/bin/backup.sh

上面命令表示: 在每月每周(即每月) 的1,10,12日的4点45分执行/apps/bin/目录下的backup.sh

 

10 1 * * 6,0 /bin/find -name "core" -exec rm {} /;

上面命令表示 在每周的周六和周日的1:10分执行find命令

 

 

0,30 18-23 * * * /apps/bin/dbcheck.sh

上面命令表示:每晚的18点到23点隔30分钟执行dbcheck.sh

 

 

 

 

 

 

 crontab命令选项

crontab [-u user] -e -l -r

-u 用户名 (如果使用自己的名字登录,则不需使用-u选项 crontab在执行的时候该命令能够知道当前用户)

-e 编辑crontab文件

-l  列出crontab文件中的内容

-r 删除crontab文件

 

创建一个新的crontab文件

考虑到想cron进程提交一个crontab文件之前,首先要做的一件事就是设置环境变量EDITOR

编辑$HOME目录下的.profile文件 加入下面一行:

EDITOR=vi;

export EDITOR

 

 创建一个<user>cron的文件例如rootcron

在该文件中加入如下内容:

0,15,30,45 18-06 * * * /bin/echo 'date' > /dev/console

 上面例子中,系统每隔15分钟向控制台输出一下当前时间

 提交rootcron

#crontab rootcron

该文件已经提交给cron进程 每隔15分钟运行一次

 

 

 

列出crontab文件,可以用下面命令

#crontab -l

编辑命令:

#crontab -e

 

 

 

 

 

 

2.at命令

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值