【Linux】crontab 定时启动sh

crontab -e

20点59分启动脚本

59 20 * * * sh /home/fzuir/xingye4crawl/endXingYe4Crawl.sh >/home/fzuir/xingye4crawl/xingye4_pro_kill.log 2>&1

启动:

#!/bin/bash
. /home/fzuir/.profile

# JAVA
export JAVA_HOME=/usr/local/jdk1.7.0_75
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

#hm=$(date +%H | awk ‘{print $0+0}‘)
#echo $hm%3
#tmp=$(($hm%3))

today=`date +%Y%m%d`;
yesterday=`date -d ‘1 days ago‘ +%Y%m%d`
echo yesterday

if [ -x /bin/ps ];then
        /bin/ps -ef >/tmp/Skycent$$$ 2>/tmp/Skycent.err$$$
          if [ $? -ne 0 ];then
             exit 1

          fi
        /bin/rm -f /tmp/Skycent.err$$$
else
        echo "PS Not Exist"
        exit 1
fi

grep  "xingye4CrawlMainThread"  /tmp/Skycent$$$ >/dev/null 2>/dev/null

if [ $? -ne 0 ];then

cd /home/fzuir/xingye4crawl
java -jar xingye4CrawlMainThread.jar ./conf/xinye4conf.properties >> ./nohup.out 2>&1 &

else
  echo "xingye4CrawlMainThread.jar  is already Runing "
fi

/bin/rm -f /tmp/Skycent$$$

  结束进程:

#!/bin/bash
. /home/fzuir/.profile
################################################
# 用于在零点时检测当前是否有抽取程序在运行,如果有则停止该程序
# 用法:将 用于识别程序名的关键词 按实际情况修改即可,需将本sh加入crontab在每天零点运行
# keys=`(ps -ef |grep 用于识别程序名的关键词 |grep -v grep) | awk ‘{print $2}‘`
################################################
keys=`(ps -ef |grep xingye4CrawlMainThread |grep -v grep) | awk ‘{print $2}‘`
if [ $? -eq 0 ];then
  echo "exist this process"
  for key in $keys
  do
	echo $key
	kill -9 $key
  done
else
  echo "not exist this process"
fi
时间: 2024-10-19 06:48:58

【Linux】crontab 定时启动sh的相关文章

linux crontab定时执行

#利用crontab定时执行url研究了两种简单方式#一利用lynx访问url yum install lynxservice crond startcrontab -einsert键* * * * * lynx -dump http://192.168.0.10/gas_station_erp/index.php/socket/SendDev/getDevInfoesc :wqservice crond restart #* * * * * 表示每分钟执行一次 #二调用sh脚本 service

windows和Linux下定时启动或关闭服务

http://blog.csdn.net/clare504/article/details/17410643 1.Windows下的定时启动程序可以采用系统的计划和任务,定时启动服务可以在计划任务中添加一个启动服务的批处理程序. 例如定时启动cimserver服务,可以在用记事本写成一个批处理文件,然后在计划任务中手动添加定时执行该批处理. 批处理文件内容如下: sc stop cimserver                                       //先停止服务ping

linux Crontab定时备份项目案例

首先先写好备份的脚本(拷贝的命令) #bash/bin cd /finance/tomcat8-finance/wtpwebapps tar -czf /finance/webapp_backup/**.finance.web.`date +'%Y%m%d-%H%M%S'`.tar.gz liyedai.finance.web 备份的文件会以当前时间来命名. 脚本一定要赋予权限. 然后给linux添加定时任务 crontab -e 0 1 * * * /finance/9backup_finan

Linux crontab定时执行任务 命令格式与详细例子

基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示月份1-12 第5列标识号星期0-6(0表示星期天) 第6列要运行的命令 crontab文件的一些例子: 30 21 * * * /usr/local/etc/rc.d/lighttpd restart 上面的例子表示每晚的21:30重启apache. 45 4 1,10,22 * * /usr/l

Linux crontab定时执行任务 命令格式

周期性任务执行:cron, vixie-cron,cronie crond:cron daemon, cron守护进程,一直工作于后台 #service crond status crond(pid  1718) is running... 如果状态信息为"is stopped.",则需要执行"service crond start;chkconfig crond on":   cron任务分两类: 系统cron: 定义在/etc/crontab 用户cron: 定

关于linux crontab定时操作oracle不执行的问题解决方案

问题描述:启动定时任务对oracle表进行操作,但是手动执行脚本无问题,定时任务执行无结果不反馈消息 解决方案:以centos7为例吗,首先确定脚本可手动执行,然后检查/var/log/cron下的日志,看定时任务是否启动:若没有启动则检查定时任务,若启动则检查/var/mail/oracle看有没有报错: 一般报错问题:是环境变量的问题:/etc/crontab 查看crontab环境变量:env查看系统环境变量 解决方案:在脚本首页增加source /home/oracle/.bashrc(

Linux crontab定时执行任务

1.设置定时任务的命令是crontab -e首次使用crontab的时候会让你选择编辑工具,看个人喜好了.选择一个即可.如果以后想换默认编辑工具,可以按照下面的提示运行命令"select-editor"进行选择.Select an editor.  To change later, run 'select-editor'.1. /bin/ed2. /bin/nano        <---- easiest3. /usr/bin/vim.tiny Choose 1-3 [2]:

Linux crontab的使用方式,sh脚本的编写,sh脚本自动启动tomcat服务器,sh监控系统运行情况

1.如果想使用Linux crontab(类似java quartz),需要先启动crontab.关于crontab的启动.关闭.重启.重新载入配置的方式如下: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置 2.crontab的命令介绍: A:添加crontab的命令是:c

Linux下使用crontab定时备份日志

上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 备份文件加上时间戳date +%Y%m%d%H%M%S 以上是备份说明,下面分三步操作 一.shell脚本 [[email protected] lampp]# vi test.sh    #创建shell脚本 #!/bin/bash