鸿 网 互 联 www.68idc.cn

几种非交互执行脚本的方式

来源:互联网 作者:佚名 时间:2015-10-18 05:03
一般情况下,我们执行某一个脚本或者任务时,会有交互信息,例如 MapReduce 计算、Hbase 入库等。但是有时候我们不是很关心交互信息,希望它可以一直执行,中间结果可以保存在一个日志文件里面。怎么办呢,下面有几种方式可以解决这个问题。 定义 脚本的名称

一般情况下,我们执行某一个脚本或者任务时,会有交互信息,例如 MapReduce 计算、Hbase 入库等。但是有时候我们不是很关心交互信息,希望它可以一直执行,中间结果可以保存在一个日志文件里面。怎么办呢,下面有几种方式可以解决这个问题。

定义

脚本的名称及路径为:

/home/test/test.sh

执行中间结果存储文件为:

/home/test/output.log

登录环境:

SecureCRT远程登录


方式一:crontab

操作: 

1.在终端输入:crontab -e

2.打开crontab配置文件后,写入语句:

00 01 * * * sh /home/test/test/sh [参数] >> /home/test/output.log 2>&1

说明:

00 01 * * *表示执行的时间设定,此处表示每日01:00开始执行

sh /home/test/test/sh [参数]  表示要执行的脚本

/home/test/output.log表示中间结果的输出位置


方式二:nohup

操作:

1.在终端中输入:

nohup sh /home/test/test/sh [参数] >> /home/test/output.log 2>&1


说明:

sh /home/test/test/sh [参数]  表示要执行的脚本

/home/test/output.log表示中间结果的输出位置

注意:

1.操作时,再终端输入上述命令后,终端可能不会返回可输入命令的状态,此时直接关闭界面窗口即可,不需要按Ctrl+C来中断。

2.如果想看到当前执行的状态,可以输入:

tail -f /home/test/output.log

会自动显示当前执行的状态信息。


方式三:自搭建Job任务调度系统


该系统的功能与 crontab 类似:

相似点:配置好相关脚本执行语句和执行时间,便可定时执行;

不同点:不需要指定中间结果输出位置,会直接保存在该系统上,方便查阅。














网友评论
<