免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7911 | 回复: 8
打印 上一主题 下一主题

[系统管理] 请教crontab运行的脚本如何获得环境中的环境变量 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-06-25 19:07 |只看该作者 |倒序浏览
在crontab运行的脚本中执行:
  1.     echo "PATH1:"
  2.     echo ${PATH}
  3.     source /etc/profile
  4.     source /etc/bash.bashrc
  5.     source ${HOME}/.bashrc
  6.     echo "PATH2:"
  7.     echo ${PATH}
复制代码
发现,并没有把 ${HOME}/.bashrc中的PATH环境变量继承下来,请教高手:怎样才能继承在.bashrc中设置的PATH环境变量?

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
2 [报告]
发表于 2014-06-25 20:47 |只看该作者
回复 1# karlzheng_cu


    source 了还不行???? 你确定??

论坛徽章:
0
3 [报告]
发表于 2014-06-25 20:48 来自手机 |只看该作者
. ${HOME}/.bashrc

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
4 [报告]
发表于 2014-06-25 21:08 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
5
金牛座
日期:2013-10-14 14:40:422015年亚洲杯之伊朗
日期:2015-03-26 10:37:012015亚冠之浦和红钻
日期:2015-10-12 17:47:4115-16赛季CBA联赛之山东
日期:2016-01-20 16:43:1215-16赛季CBA联赛之辽宁
日期:2016-03-29 16:43:59
5 [报告]
发表于 2014-06-25 21:11 |只看该作者
.bashrc是在用户登陆开启shell时通过/etc/profile会调用执行的
比如你.bashrc里面是 A=123
当你用该用户登录时执行$A会输出123,但是这也只是当前shell的变量,并不是环境变量,shell脚本执行时相当于新开个shell,他不不会去继承变量A。所以想让shell脚本使用.bashrc的变量就在.bashrc中写成export A=123

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
6 [报告]
发表于 2014-06-25 23:36 |只看该作者
karlzheng_cu 发表于 2014-06-25 19:07
在crontab运行的脚本中执行:发现,并没有把 ${HOME}/.bashrc中的PATH环境变量继承下来,请教高手:怎样才能 ...


LS两位大神, LZ的问题是已经在脚本中加载了配置文件,但没生效,

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
7 [报告]
发表于 2014-06-26 09:34 |只看该作者
回复 1# karlzheng_cu


  检查  $HOME 。

论坛徽章:
0
8 [报告]
发表于 2014-06-26 11:33 |只看该作者
相对路径总是有隐患的。
从安全角度讲,root用户应该使用形如/bin/ls的命令。

论坛徽章:
0
9 [报告]
发表于 2014-06-26 11:39 |只看该作者
在你的crontab scripts 中添加
.  ${HOME}/.bashrc
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP