`
todd_liu
  • 浏览: 64175 次
  • 性别: Icon_minigender_1
  • 来自: 江苏
社区版块
存档分类
最新评论

crontab 中使用环境变量

阅读更多

 

环境:(产品,平台,机型,软件版本,等)AIX5L

问题描述:crontab中启动的shell脚本不能正常运行,但是使用手动执行没有问题,在$home/.profile中设定了脚本所需要的环境变量。

解答:cron命令的默认shell是/usr/bin/bsh,如果要在cron启动的脚本中使用ksh,就必须在脚本中的第一行添加“#!/usr/bin/ksh”的声明。

如果cron进程启动的shell脚本要用登录时的环境变量,就必须在cron启动的shell脚本中添加下面的内容,才能够在启动的脚本中使用
$home/.profile文件中的环境变量。

. $home/.profile

这是因为cron进程执行的shell脚本是不会自动加载用户目录下的.profile文件,所以需要脚本自己加载所需要的环境变量。
================
环境变量文件加载顺序
/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 

另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.

~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。 

分享到:
评论

相关推荐

    Linux定时脚本crontab中文乱码.docx

    当我们在 Linux 系统中使用 crontab 执行 jar 文件时,输出结果中出现中文乱码的原因是由于 Unix/Linux 下的 crontab 环境与用户环境的差异。通常情况下,用户环境中会设置一些环境变量,例如语言环境变量 LANG,...

    Linux Crontab 获取环境变量配置解析

    主要介绍了Linux Crontab 获取环境变量的配置实例解析,需要的朋友可以参考下

    linux定时执行,crontab命令使用介绍借鉴.pdf

    使用 Crontab 命令时需要注意的是,运行脚本中能够访问到的环境变量和当前测试环境中的环境变量未必一致。一个比较保险的做法是在运行的脚本程序中自行设置环境变量 (export) 。 在使用 Crontab 命令时,还需要注意...

    crontab用法详解

    如果希望添加、删除或编辑crontab文件中的条目,而EDITOR环境变量又设置为vi,那么就可以用vi来编辑crontab文件,相应的命令为: $ crontab -e 可以像使用vi编辑其他任何文件那样修改crontab文件并退出。 删除...

    专题资料(2021-2022年)Linux定时执行程序Crontab.docx

    需要注意的是,在使用 Crontab 的时候,要特别注意的是运行脚本中能够访问到的环境变量和当前测试环境中的环境变量未必一致,一个比较保险的做法是在运行的脚本程序中自行设置环境变量(export)。 在使用 Crontab ...

    linux中crontab计划任务linux操作系统电脑资料.doc

    * cmd 表示要运行的程序,它被送入 sh 执行,这个 Shell 只有 USER、HOME、SHELL 三个环境变量。 Crontab 的主要参数 * -e:执行文字器来设定时程表,内定的文字器是 vi。 * -r:删除目前的时程表。 * -l:列出...

    AIX上oracle备份策略(rman+crontab)

    UNIX(Linux) 上数据库oracle 的备份策略,使用rman恢复管理器进行增量备份,crontab添加任务计划。 把路径改一下,环境变量稍作修改就可应用到windows系统上。

    crontab调用python,python中封装kettle的定时任务调用

    crontab调用python,python中封装kettle的定时任务调用 调用,注意python中导入环境变量 30 0 * * * python /export/quality_kettle/kettle/Resposity/runKettle.py

    操作系统安全:etc crontab.docx

    /etc/crontab Crond linux 系统则是由 cron (crond) 这个...前四行是用来配置crond任务运行的环境变量,第一行SHELL变量指定了系统要使用哪个shell,这里是bash,第二行PATH变量指定了系统执行命令的路径,第三行MAIL

    Linux命令下crontab命令

     可以通过cron.allow 和 cron.deny文件管理用户使用crontab的权限。如果cron.allow存在,用户必须列在其中才会被允许使用cron;如果cron.deny存在,被列在其中的用户禁止使用cron;如果两者都不存在,只有超级用户...

    Linux crontab定时执行Shell脚本需要执行特定的命令时解决思路

    多方查找发现Shell脚本中的Java命令需要引入环境变量方可正常执行。因此做了一下修改,脚本如下(仅供参考): 1、crontab执行配置 * * * * * cd /项目目录 && ./auto_start.sh >> /log/auto.out 2、Shell脚本 #!/...

    Linux下定时执行脚本

    Linux 下的定时执行脚本可以通过 crontab 文件来实现,通过设置环境变量、crontab 文件格式、星号(*)和连字号(-)的使用、步进设置、注释行、定期执行任务和用户定时执行等来实现各种定时执行任务。

    linux下oracle数据库备份的脚本文件

    * 设置备份文件名和日志文件名,以便在备份过程中使用。 * 执行 Oracle 备份命令,以将数据库备份到指定文件中。 * 设置备份命令的日志文件,以便记录备份过程中的错误信息。 备份命令 backups 命令用于将 Oracle...

    docker-ubuntu-cron:不要使用这个! Ubuntu 最新的 cron,由主管提供支持

    Docker Ubuntu 最新的 cron,由主管提供支持... 如果您希望其他文件也出现在标准输出中,您可以使用分号分隔的文件列表设置环境变量FILES_TO_LOG (例如FILES_TO_LOG=/var/log/app_info.log;/var/log/app_error.log )

    LINUX与UNIX_Shell编程指南(上)

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    LINUX 与 UNIX SHELL编程指南

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第 15 章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 ...

    LINUX与UNIX SHELL编程指南 高清PDF

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    Linux与unix shell编程指南(1-16)

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    linux shell 编程教程

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    shell 编程指南pdf

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

Global site tag (gtag.js) - Google Analytics