关于linux环境下crontab命令环境变量的问题
这几天在弄数据库备份的事情,其中涉及到使用crontab命令自动执行shell脚本的问题,发现将写好的数据库导出脚本export.sh
###############################################################################
extfile=`date +"%m_%d_%H_%M"`
###############################################################################
exp aa/aa file=/home/oracle/expfile/aafulltmp_$extfile.dmp constraints=y owner=aa log=n
exp bb/bb file=/home/oracle/expfile/bbfulltmp_$extfile.dmp constraints=y owner=bb log=n
加入到crontab中会执行失败
crontab内容如下
[dbserver@db20 ~]$ crontab -l
32 2 * * * /home/dbserver/exportdb.sh
根据crontab执行后会给用户发送一封邮件中的提示显示
/home/dbserver/export.sh: line 4: exp: command not found
/home/dbserver/export.sh: line 5: exp: command not found
看起来不是crontab的问题,而是没有找到exp命令,说明是环境变量的问题,crontab执行时环境变量与直接执行是不一样的,去网上找到了解决办法如下
在shell脚本前面加入
#!/bin/bash
source /home/dbserver/.bash_profile
最终的shell文件内容为
###############################################################################
extfile=`date +"%m_%d_%H_%M"`
###############################################################################
#!/bin/bash
source /home/dbserver/.bash_profile
exp aa/aa file=/home/oracle/expfile/aafulltmp_$extfile.dmp constraints=y owner=aa log=n
exp bb/bb file=/home/oracle/expfile/bbfulltmp_$extfile.dmp constraints=y owner=bb log=n
至此成功执行,还有一种方法是将exp命令写成绝对路径
完结!
关于linux环境下crontab命令环境变量的问题的更多相关文章
- windows 环境和linux环境下 ping命令的区别:
Ping 是Windows自带的一个DOS命令.利用它可以检查网络是否能够连通,用好它可以很好地帮助我们分析判定网络故障.该命令可以加许多参数使用,键入Ping按回车即可看到详细说明.Ping 命令可 ...
- 在 Windows 和 Linux(Gnome) 环境下 从命令界面打开网页的方式
1.在 Windows 中 通过命令 可以打开网页是很简单的: start http://www.baidu.com 或 start iexplorer http://www.baidu.com 第二 ...
- Linux 14.04lts 环境下搭建交叉编译环境arm-linux-gcc-4.5.1
交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构的程序代码,在该环境下编译出嵌入式Linux系统所需要的操作系统.应用程序等,然后再上传到目标板上. 首 先要明确gcc 和arm-linux- ...
- 【android开发】如何在Linux平台下安装JDK环境
原文:http://android.eoe.cn/topic/android_sdk Linux平台JDK安装 本文主要描述如何在Linux平台下安装JDK环境.进入网页:http://www.ora ...
- linux系统下深度学习环境搭建和使用
作为一个AI工程师,对Linux的一些技能的掌握也能从一定层面反应工程师的资深水平. 要求1:基于SSH的远程访问(本篇文章) 能用一台笔记本电脑,远程登陆一台linux服务器 能随时使用笔记本电脑启 ...
- centos环境下输入命令不能有中文那么我怎么插入中文数据到数据库
centos环境下输入命令不能有中文那么我怎么插入中文数据到数据库 如下图: 首先查看是否安装了中文语言支持组件 yum grouplist 没有的话安装 yum install Chinese Su ...
- win 环境下 node.js环境变量
在win 环境下 node.js环境变量有两种情况: (1)开发环境(development):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告. ...
- [r]Ubuntu Linux系统下apt-get命令详解
Ubuntu Linux系统下apt-get命令详解(via|via) 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show package ...
- Ubuntu Linux系统下apt-get命令详解
整理了Ubuntu Linux操作系统下apt-get命令的详细说明,分享给大家.常用的APT命令参数: apt-cache search package 搜索包 apt-cache show pac ...
随机推荐
- P2610 [ZJOI2012]旅游
题目描述 到了难得的暑假,为了庆祝小白在数学考试中取得的优异成绩,小蓝决定带小白出去旅游~~ 经过一番抉择,两人决定将T国作为他们的目的地.T国的国土可以用一个凸N边形来表示,N个顶点表示N个入境/出 ...
- open_basedir restriction in effect的错误及其解决办法
问题是出现在了PHP.INI上面了 原因是php.ini里设置了 opendir=/var/web/w0895/:/tmp:/usr/lib/php 解答: 其实open_basedir ...
- [Wf2011]Chips Challenge
两个条件都不太好处理 每行放置的个数实际很小,枚举最多放x 但还是不好放 考虑所有位置先都放上,然后删除最少使得合法 为了凑所有的位置都考虑到,把它当最大流 但是删除最少,所以最小费用 行列相关,左行 ...
- 【单调队列】【P3957】 跳房子
传送门 Description 跳房子,也叫跳飞机,是一种世界性的儿童游戏,也是中国民间传统的体育游戏之一. 跳房子的游戏规则如下: 在地面上确定一个起点,然后在起点右侧画 $n$ 个格子,这些格子都 ...
- jq从数组中删除指定元素(根据自定义条件) 超好用的 $.grep() 方法
转: jQuery.grep() 什么是jQuery.grep()? jQuery.grep()是一个查找满足过滤函数的数组元素的函数.原始数组不受影响,返回值为数组. 用法介绍: 写法: jQuer ...
- Codeforces 938.D Buy a Ticket
D. Buy a Ticket time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- 安装vim with python
http://note.youdao.com/noteshare?id=4eaddfef93696451de7ff890a6af3cc4
- STL源码分析-hashtable
http://note.youdao.com/noteshare?id=5c8d2b09c0f72af9a12b0ed2023a338d
- WPF系列之二:解耦View层控件事件与ViewModel层事件的响应
以前的做法: 1.当项目的时间比较紧迫的时候,对UI层中控件的事件的处理,往往采取的是类似Winform中最简单的做法,直接做一个事件的Handler直接去调用VM层的方法. 2.控件只有一个Comm ...
- switch滑动开关
<!DOCTYPE html> <html> <head > <meta charset="utf-8"> <title> ...