linux/unix/centos下直接执行脚本可以成功,但是放在crontab里面就不行~解释如下_kevin_LCC的博客-程序员秘密

技术标签: 脚本  系统运维  crontab  linux  linux系统  

我们经常会在linux/unix/centos下面写脚本放在任务计划里面自己执行,但是有的时候会遇到脚本手动执行没问题,但是crontab里面就不行了;这个是环境变量的原因。

这个问题很简单,就是因为你手动执行的时候(  通过su  或者直接登入用户的也就是相当于执行了用户家目录下面的 .bash_profile文件  )环境变量就生效了;

而你通过crontab的时候,环境变量没生效,所以脚本执行失败(这个脚本有要使用到相应环境变量的),而有的脚本不需要使用环境表里,就没问题,比如需要使用java环境变量

的应用等;

解决办法就是在你的脚本申明后面添加激活环境变量命令即可:

#!/bin/bash/

source  /home/user/.bash_profile



或者

#!/bin/bash/

.    /home/user/.bash_profile


或者


#!/bin/bash/

/bin/bash   /home/user/.bash_profile


等只要可以激活环境变量的命令都可以的。







版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/kevin_LCC/article/details/42038043

智能推荐

如何看待年过35周岁,即将奔四的大龄程序猿_石头城程序猿的博客-程序员秘密

80后的我们,不知不觉,正在奔四的道路上越来越近,有天,老娘打来电话“儿子,马上四十了,要给你好好过个生日”,我当时楞了好一会。是的,再过几年,即将迈入40岁,好恐怖的岁月,虽然藏着那份童真,但是岁月无情,心血来潮,聊聊大龄程序猿的日常:我的身边其实很多跟我年龄相仿的朋友们,10月份,一位同事结婚,曾经“京城自助四少”终于利用这次机会聚在了一起,14年分开,转眼间已经有6年多未见,再见已经是各种沧桑;其中黄少已经下海,跟着媳妇在乌镇做起了外贸生意,虽然没有发财,但是日子也过得去,仿佛看到了第二春。剩余的

机器学习入门实战-齐向彬-专题视频课程_人工智能机器学习的博客-程序员秘密

主要介绍了常用算法和原理推导,和numpy数组和矩阵,简单线性和逻辑回归,决策数,KNN,SVM 贝叶素 聚类等算法 通过这门课程可以很好的入门机器学习,案列分享算法在场景中的应用...

Consider defining a bean of type 'xx.xx.dao.UserDao' in your configuration._兔子不爱吃草的博客-程序员秘密

首先因为没配数据源的问题在Application启动类上加了@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}),解决启动报错的问题,后来数据源配好忘了去掉,所以后来变报了这个错,花了不少时间找原因。启动报这个错ERROR 13304 --- [ main] o.s.b.d.Logging...

STM32中HAL库使用-串口发送(二)_hal_uart_transmit_励志成为业余大佬的博客-程序员秘密

第一个红框里清除了发送中断使能(同接收一样,在用完之后就关掉,但是不同于接收,发送完成就不用再在回调函数中使能了,因为在中断发送的时候就会使能),第二个红框调用回调函数。使用HAL_UART_Transmit_IT函数发送指定长度的数据,并使能发送中断,发送到一半和发送结束会触发中断(相关的回调函数是。)中断触发后发送中断使能会被清除,然后调用回调函数,回调函数执行完成之后结束本次发送。当发送完成之后(或者发送一半,发送一半也有个中断)就会执行回调函数。,但是对于发送,该函数的作用是。

“TCP/IP五层模型”与“数据包封装和分用”_appl首部_Emma-Zhang的博客-程序员秘密

为了方便交流,人类发明了语言,约定了每个汉字符号代表的意思。同理,为了机器之间的交流,我们也需要一些“约定”,我们称这些约定为“协议”。在互联网中,所有的计算机都是由 路由器和交换机 连接到一起的。计算机之间的传输媒介是光信号和电信号。通过“频率”和“强弱”来表示 0 和 1 这样的信息。要想传递不同的信息,就需要约定好双方的数据格式。OSI七层协议分层名称功能每层功能概述...

Java语言程序设计-基础篇-第八版-编程练习题-第八章_anken2316的博客-程序员秘密

package 编程练习题chapter8;import java.util.GregorianCalendar;public class Exercise8_5 { public static void main(String[] args) { GregorianCalendar calendar = new GregorianCale...

随便推点

神奇而陌生的jqgrid_沉默王二的博客-程序员秘密

最近在研究jqgrid的单元格编辑功能,由衷感到其神奇而强大的地方,同时也默默的忍受着没有完整API而造成的使用困难,深深的为那些没有亲自编写代码却不断的copy文章发布人员的可恶,下面我将通过自己的亲身体会并且附送代码和解释的方式为大家送上一份福利:1.从官网上下载jquery.jqGrid.min.js,我也将在附件中添加一个完整的jqGrid源码,然后附送官网API的地址http://...

Java常用类库--StringBuffer:append、insert、reverse、replace、subString、delete、indexOf_吴英强的博客-程序员秘密

1、认识StringBuffer1.1字符串连接 操作appendappend方法返回StringBuffer类的实例化类对象。public class StringBufferDemo01{ public static void main(String args[]){ StringBuffer buf = new StringBuffer() ; // 声

悟空CRM客户关系管理系统测试_crm系统测试用例模板_柒。的博客-程序员秘密

今日总结:今天在熟悉了悟空CRM系统的业务过后,对各个CRM内的功能模块进行具体的功能测试,并且编写具体的功能模块的测试用例。昨天已经写好了测试计划,对各个模块、测试的进度进行了分配,由我给到具体的测试人员,每个测试人员负责对应的功能模块进行测试。今天根据昨天写好的测试计划,进行功能模块测试的分配,分配模块到具体的测试人员。今天主要是编写测试用例,针对前台还有后台的各个功能模块的功能性测试,分为前台办公、客户管理、商业智能、项目管理,后台主要是系统配置和权限管理。我负责测试前台的客户管理模块

python字符串包含_13.Python字符串详解(包含长字符串和原始字符串)_weixin_39609541的博客-程序员秘密

简单地理解,字符串就是“一串字符”,也就是用引号包裹的任何数据,比如“Hello,Charlie”是一个字符串,“12345”也是一个字符串。Python 要求,字符串必须使用引号括起来,可以使用单引号或者双引号,只要成对即可。字符串中的内容几乎可以包含任何字符,英文字符也行,中文字符也行。Python 3.x 对中文字符支持较好,但 Python 2.x 则要求在源程序中增加“#coding:u...

多线程之pthread_create()_CodeAllen嵌入式的博客-程序员秘密

总述:pthread_create是(Unix、Linux、Mac OS X)等操作系统的创建线程的函数。它的功能是创建线程(实际上就是确定调用该线程函数的入口点),在线程创建以后,就开始运行相关的线程函数。pthread_create的返回值表示成功,返回0;表示出错,返回表示-1。pthread_create函数如何创造线程函数原型声明:#include <pthread.h>int pthread_create( pthread_t *res

使用crypto-js实现aes-128-cbc加解密_js aes128解密_橘子拌面的博客-程序员秘密

aes-128-cbc(utf8环境,密文使用Hex编码)import CryptoJS from "crypto-js"; export default { //加密 encrypt(data, keyStr = 'fXoY5SYpr2uz4yFr', ivStr = 'UV4kibe6BDBN3HrE') { let key = CryptoJS.enc.Utf8.parse(keyStr); let iv = CryptoJS.enc.Utf8.parse(i

推荐文章

热门文章

相关标签