crontab使用环境变量】的更多相关文章

一个shell脚本,直接执行能成功,但是加在crontab后确怎么也执行不成功. 问题的原因是:crontab的环境变量与直接执行用户的环境变量不一样. export PATH=$PATH:/sbin 使用全路径,或者把包含路径在环境变量加上即可.…
crontab如果不注意的话早晚会出问题,而且这种问题一旦出一次,就会永远记得,因为这种问题很折腾人.                                                                                                          ——某前辈 设置了一个crontab30 0 * * * cd /home/work/user/huangbx/research/getfeature/data/current; sh…
两种方式: 1)直接在crontab中定义变量,如: A=123 * * * * * echo $A > /tmp/a.txt 注意在定义变量时不能使用$引用其它变量,如下面的做法错误: A=123 B=$A 2)在/etc/environment中定义变量 此文件定义变量的格式为:NAME=VALUE,和crontab相关,也不能使用$引用其它变量. 操作系统在登录时使用的第一个文件是/etc/environment文件,/etc/environment文件包含指定所有进程的基本环境的变量.…
这几天在弄数据库备份的事情,其中涉及到使用crontab命令自动执行shell脚本的问题,发现将写好的数据库导出脚本export.sh ############################################################################### extfile=`date +"%m_%d_%H_%M"` ###################################################################…
今天遇到一个奇怪的问题,同样一个脚本,手动执行没问题,加入到crontab中,就出现无法运行的情况,第一反应是环境变量问题 环境说明: 操作系统:centos 用户:test用户通过sudo su切换到root用户执行脚本和计划任务 程序目录:脚本中引用的程序在/usr/local/bin目录下 1,查看/etc/crontab,发现这里有写环境变量,之前没有红框中的目录,我手动添加以后,重启crontab服务. service crond restart 重启之后,测试还是不行,做了一个这样的…
今天想给服务器加个自动备份mysql数据库的功能(别怪我这么久才加,阿里云每天全盘备份的,不怕丢数据库),本以为只要5分钟就能搞定的,结果入了两个大坑. 我的crontab是这样写的: * * * mysqldump -u user -pxxxx database > "/alidata/backup/imyzf.com/$(date +%F\ %T).sql" 首先,是百分号(%). 在crontab -e中输入的命令里,第一个%会被认为是标准输入的开始,接下来的%都会被认为是…
为了定时监控Linux系统CPU.内存.负载的使用情况,写了个Shell脚本,当达到一定值得时候,发送邮件通知.需要用到Crontab的定时任务去执行这个脚本,但是发现通过命令(./test.sh)执行Shell文件的时候,可以获取Linux的环境变量;可是通过Crontab做的定时任务,无法获取. 查找资料之后发现,crontab有一个坏毛病,就是它总是不会缺省的从用户profile文件中读取环境变量参数,经常导致在手工执行某个 脚本时是成功的,但是到crontab中试图让它定期执行时就是会出…
参考资料:http://blog.slogra.com/post-238.html 1. 问题描述 一段数据处理的 shell 程序,在 shell 中手动运行,可以正确执行.但是,把它放在 crontab 列表里,就会报错,提示 "matlab: command not found.". AutoRefreshData.sh 的部分内容如下: [She@She ~]$ cat /home/She/data/AutoRefreshData.sh#!/bin/bash ... Matla…
原文连接:http://blog.csdn.net/zc02051126/article/details/20480289 come from http://www.360doc.com/content/12/1010/14/7492958_240641022.shtml 设置了一个crontab 30 0 * * * cd /home/work/user/huangbx/research/getfeature/data/current; sh resample.sh &>/dev/null…
手动在CentOS中执行sh脚本,调用java程序,一切正常: 将该sh加入crontab中定时调度之后,挂了,完全没有执行到的感觉啊!!! 查看crontab执行日志: cat /var/log/cron 有执行记录,擦擦擦~~~ 难道用crontab调用执行会报错,打印日志先: crontab -e 40 10 * * * /home/job.sh 2>>/home/log 再调度一次,查看日志: cat /home/log 还真报错了: Exception in thread "…
今天设置linux定时任务时,python内调用的shell指令总执行失败,单独调用python脚本则无问题,考虑到是环境变量未生效引起. 故在执行crontab -e编辑配置文件时,将shell内执行env指令得到的环境变量(PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games)加入到任务(31 15 * * *  python /opt/ybs/bin/bac…
import cx_Oracle Traceback (most recent call last): File "", line 1, in ? ImportError: libclntsh.so.10.1: cannot open shared object file: No such file or directory 看以下帖子解决的,唯一比他幸运的是看了他的贴子,不用花半天~:) ~~~~~~~~~~~~ crontab 中 python 脚本执行失败的解决方法 写服务器程序…
今天遇到一个问题.执行在终端newLISP文字,一切正常,搬去crontab在将无法正常工作.即使crontab -e命令是在同一个用户执行.还是有问题. 因为newLISP脚本使用hive和hadoop.它预计发行环境变量. 所以第一次使用newLISP shell执行(env)命令,将当前环境变量记录到文件evn.lsp中. 然后在newLISP脚本中载入之. 以下是env.lsp文件部分内容: (set 'local-envs '(("LC_PAPER" "en_US.…
起因 crontab中的定时任务,执行到关闭tomcat时,报环境变量找不到 解决方案 1.使用 . /etc/profile 引入环境变量 ###推荐, 实测ubuntu12 成功 2.使用 source /etc/profile 引入环境变量 ###不推荐,实测ubuntu12 失败 注意 . /etc/profile中 . 和 /etc/profile之间是有空格的,我就是被这个坑了.一定要加空格,切记~…
Crontab 执行时没有环境变量! Crontab 执行时没有环境变量! Crontab 执行时没有环境变量! 重要的事情说三遍,浪费我半天时间去找问题!! 非系统默认工具,执行时候需要加全路径!!…
1.crontab简单使用 cmd 其实就是5个星星的事情,随便百度一下吧 5个时间标签用来标注执行的设定.比如每5分钟执行一次/5 * * * cmd 要特别注意 2.有些命令在命令行里执行很好,到了crontab里面不能正常执行,就是因为环境变量问题. crontab在执行命令的时候不会去执行环境变量的那个脚本所以可以用两种方法来讲解: 2.1在你的启动脚本里面写那些export的环境变量的定义然后再执行: 2.2在脚本里面用(bash) source /etc/profile 把java的…
crontab,总是不会缺省的从用户profile文件中读取环境变量参数 经常导致在手工执行某个脚本时是成功的,但是到crontab中试图执行时就会报错. 解决办法如下: 方法一:在shell文件中获取环境变量值路径写成绝对路径,不用环境变量的路径值.例如获取CPU的使用情况,通过/proc/cpuinfo来获取 方法二:在shell脚本缺省的#!/bin/bash 开头换行后执行 source /etc/profile source $HOME/.bash_profile 这样,crontab…
公司需要做异构库数据同步,由于之前实际使用过,且字段类型也兼容,满足业务场景,使用了阿里开源数据同步工具:datax,服务器上crontab定时脚本执行. 由于crontab只加载/ect/environment,并不加载/etc/profile和~/.bash_profile,所以需要在脚本里手动添加环境变量 #!/bin/sh #dates=`date -d "-1 days" "+%Y-%m-%d"` # -------------------- #-----…
在java.ext.dirs中使用环境变量导致crontab执行不成功的问题及解决 Table of Contents 1. java.ext.dirs的使用和环境变量 2. 问题:在crontab中执行失败 3. 解决办法 1 java.ext.dirs的使用和环境变量 在一个小项目中,出于简化需要,没有划分不同的模块,而是视为一个模块,打成一个jar包,通过java -cp 类名的方式进行不同的调用. 因为引用的jar包比较多,所以使用了java.ext.dirs进行简化处理.为了保证jav…
背景 1,定时任务命令 crontab -e 2,默认的环境变量 SHELL=/bin/sh PATH=/usr/bin:/bin PWD=/home/owl LANG=zh_CN.UTF- SHLVL= HOME=/home/owl LANGUAGE=zh_CN:zh LOGNAME=owl _=/usr/bin/env 解决方法 一.使用绝对路径: 二.手动设置环境变量 在shell文件开头 PATH=/... export PATH 三.批量设置环境变量 1,在shell文件中执行2 2,…
博客分类: Linux linuxcrontabpermissionetc/profile环境变量  一.我们常常碰到在shell下执行某个命令能够成功,比如执行一个java程序: java -jar /home/opscoder/topo-audit.jar,但是在crontab下执行会失败. cornjob为 0 10 * * * java -jar /home/opscoder/topo-audit.jar: 即每天10点去执行这个jar中的main方法 二.查找失败的原因,即查看crot…
一.Crond 是什么?(概述) crontab 是一款linux系统中的定时任务软件用于实现无人值守或后台定期执行及循环执行任务的脚本程序,在企业中使用的非常广泛.     现在开始学习linux计划任务程序吧. crontab的优势: 可以实现24小时或定期执行任务,非常高效实用,几乎是每个企业都会用到的服务,同时 crond服务是运行的程序,而crontab命令是用户用来设置定时规则的命令.(crontab -e 新建一个计划任务)       #注: http://blog.csdn.n…
前言 安装完软件必要添加环境变量.指令很少,然而长时间不写就会不自信:我写的对吗?于是百度开始,于是发现又是各有千秋.好吧,好记星不如烂笔头.当然,最重要的是,百度出来的都他妈的是如何添加环境变量,只字不提删除和修改.显然,都是像我一样的外门汉做笔记的,用啥写啥. 增加环境变量 百度出来的都是修改/etc/profile文件,添加export var=value.我也没认真去看linux的指令的书,不过发现一个不错的做法. 在/etc/profile.d/下有一堆sh脚本,这些脚本就是系统初始化…
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选.对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求.实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的. 目前Tomcat最新版本为…
1.到Oracle公司的官网里下载好jdk,网址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.把下载好的jdk上传到Linux系统里,这里我借助了一个工具WinSCP 3.然后把我们的jdk包上传到software文件夹里面 博主是事先就弄了,所以多了几个文件,大家无视掉就行了 4.接着打开我们的ssh终端工具,连接上虚拟机的Linux,首先我们要去到software这…
修改环境变量PATH 最近为root添加一个环境变量发现sudo su进去没有变化所以总结了一下所有设置环境变量的方法: 查看PATH:echo $PATH 直接在命令行修改,就可以使用,但是只有在当前的窗口和用户有用, 关闭以后就失效了,所以如果是临时使用可以这样设置 export PATH=/usr/test/bin:$PATH 修改家目录下.bashrc文件,只对当前用户有用,是永久的,除非删除或者修改该文件. 如果只是自己使用添加的命令的推荐使用. 修改文件以后有两种方法使其起作用: 关…
f:\aspectj1.8\lib\aspectjrt.jar;.;%JAVA_HOME%\lib;C:\Temp\IBM\SQLLIB\java\db2java.zip;C:\Temp\IBM\SQLLIB\java\db2jcc.jar;C:\Temp\IBM\SQLLIB\java\sqlj.zip;C:\Temp\IBM\SQLLIB\java\db2jcc_license_cu.jar;C:\Temp\IBM\SQLLIB\bin;C:\Temp\IBM\SQLLIB\java\com…
环境变量说明 JAVA_HOME 它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk. PATH 作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好 PATH变量后,就可以在任何目录下执行ja…
较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参数.环境变量和物理文件作为原始配置数据的来源,如果采用物理文件作为配置源,我们可以选择不同的格式(比如XML.JSON和INI等) .如果这些默认支持的配置源形式还不能满足你的需求,我们还可以通过注册自定义ConfigurationSource的方式将其他形式数据作为我们的配置来源. [ 本文已经同…
摘要:被人问到,为什么要配置Path/ClassPath JAVA_HOME,突然感觉有些讲不清楚."新人有资格问一个怪问题,但是老鸟不能给一个烂回答".所以今天为了让自己进一步学习JAVA,特地补了下课: 1. JAVA_HOME环境变量 它指向JDK的安装目录,Eclipse.NetBeans.Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的JDK. 例如:C:\javaDir\Java\jdk1.8.0_101 2. PATH环境变量 作用是指定命令搜索路…