小记---------手动执行脚本正常执行,使用crontab定时执行时 不执行

可能出现的原因就是因为crontab不会从用户的/etc/profile文件中读取环境变量,所以就出现 使用定时crontab执行时 无法执行 抛错

所以在使用crontab 定时执行脚本时  在脚本中尽量使用绝对路径,除去全局变量以外

解决方法:

1.

直接把/etc/profile文件中配置的spark的环境变量写到脚本的开头,使它在执行脚本之前先加载spark的环境变量即可

2.直接在脚本中添加即可

#!/bin/bash
#此处添加如下
./etc/profile

 num_executors=3
 executor_memory=2g
 driver_memory=2g
 executor_cores=2
 realtime_queue=root
 # backpressure
 receiver_max_rate=100
 receiver_initial_rate=30
 my_job_name="cron"
 main_class="com.df.Crontab_reservation"

 spark-submit --master yarn --deploy-mode cluster \
 --name ${my_job_name} \
 --class ${main_class} \

原文地址:https://www.cnblogs.com/yzqyxq/p/11648059.html

时间: 2024-11-05 17:01:02

小记---------手动执行脚本正常执行,使用crontab定时执行时 不执行的相关文章

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

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

解决命令行执行shell脚本成功,但crontab执行失败

实际生产案例 生产机房自建PPTP客户端通过拨号连接到生产机房,但是一旦客户端网络是意外断线再重新拨号 会产生IP冲突,于是写了一个脚本监控PPTP的IP是否有多个(一般冲突以后会生成2个IP) #!/bin/bash #author Liuyueming . /etc/profile #开始没有加这个环境变量 for i in {10..35} do n=`ifconfig|grep 10.13.0.${i}|wc -l` #循环取ip并计数 # echo `ifconfig|grep 10.

如何使用Linux的Crontab定时执行PHP脚本的方法

我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳定可靠地触发PHP执行任务 下面介绍Crontab的两种方法. 一.在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本. 每一小时执行myscript.php如下: 复制代码代码如下: # crontab

linux命令之crontab定时执行任务

一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘.日志清理等.在/etc目录下有一个crontab文件,这个就是系统任务调

crontab定时执行c二进制文件问题

当c源文件编译成功后, 比如AUTOBATCH 直接输入AUTOBATCH就可以执行了,但是写入crontab定时任务中时,就执行不了了,因为crontab是不识别环境变量的,因此 需要把环境变量写入一个sh脚本文件中,然后把AUTOBATCH执行条件也写入该sh中 我写的是AUTOBATCH.sh 内容如下: #! /bin/bash ############################# .  ~/.bash_profile .   /etc/profile ##############

Linux下的crontab定时执行任务命令详解

Linux下的crontab定时执行任务命令详解 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为"crontab",是"cron table"的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 servi

Linux下的crontab定时执行任务命令详解 - 回家的流浪者 - 博客园

Linux下的crontab定时执行任务命令详解 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间. cron的配置文件称为“crontab”,是“cron table”的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 service crond stop 

(二)Linux下的crontab定时执行任务命令详解

在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为"crontab",是"cron table"的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 service crond stop     //关闭服务

python中获取执行脚本路径方法

1.sys.path[0]:获取执行脚本目录绝对路径 #每次执行脚本时,python会将执行脚本目录加入PYTHONPATH环境变量中(sys.path获取) #!/usr/bin/python3 import os import sys print(sys.path) print(sys.path[0]) 执行结果: [[email protected] tmp]# ./py_test1/pytest24.py ['/tmp/py_test1', '/usr/local/lib/python3

解决 SqlServer执行脚本,文件过大,内存溢出问题

原文:解决 SqlServer执行脚本,文件过大,内存溢出问题 执行.sql脚本文件,如果文件较大时,执行会出现内存溢出问题,可用命令替代 cmd 中输入 osql -S 127.0.0.1,8433 -U sa -P sa -i d:\sql.sql ,-S 服务器名 -U 用户名 -P 密码 -i 文件地址,等待执行完毕即可 以上在sql2008R2下执行通过 如果数据库是 sql2008的 请将 osql 修改成为 sqlcmd 即可