当前位置:  技术问答>linux和unix

crontab 环境变量问题

    来源: 互联网  发布时间:2017-01-09

    本文导语:   OS: CentOS 5.x        比如说我要在crontab中定时执行一个java程序,需要用到CLASSPATH环境变量,必须在编辑crontab文件中设置所需的classpath,也就是说crontab执行的时候需要在crontab里面写PATH,HOME等有限几个环境变量.   ...

 OS: CentOS 5.x

   
   比如说我要在crontab中定时执行一个java程序,需要用到CLASSPATH环境变量,必须在编辑crontab文件中设置所需的classpath,也就是说crontab执行的时候需要在crontab里面写PATH,HOME等有限几个环境变量.
   
  
   其实以上一段,有点不太明白..有人告诉我,crontab不是用户去执行,而是一个线程,所以不会读取到/etc/profile里面的环境变量...
   那为什么我把date > /home/date.txt写到crontab里面就可以直接执行呢??,,既然线程不知道环境变量,那它怎么知道date这个命令呢???

   其实这种事情同样出现在rc.local里面.再请问rc.local也是跟crontab一样的原理吗?还是所有的shell都是这样的..

|
crontab是脚本,它最终还是由bash shell这个程序去读的,脚本就是一个文本文件,需要一个shell程序去解析,那就是bash shell了. 

bash shell读到了一行叫做date>/home/date.txt,它就分析出来这是一条合法的命令,于是就fork一个子进程,子进程去调用date这个程序,至于shell进程怎么知道date在哪里呢? 因为shell进程的环境变量表里的PATH存储了搜索路径,于是fork的子进程也继承了这个环境表,你不必担心execlp找不到date程序的位置.

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求助 crontab -l & crontab -e 报错,谢各位大神先~~
  • ls -l `locate crontab`和locate crontab |ls -l有什么区别啊
  • 脚本自动添加crontab示例
  • LINUX中crontab的奇怪问题
  • crontab问题!!!
  • AIX下面的crontab设置的问题
  • crontab无法编辑了,大侠帮忙!!!
  • 哪位大哥用过Crontab命令啊?
  • crontab 服务执行不了
  • crontab能让一个程序每分钟执行一次吗?
  • crontab的问题,希望高手指教!谢谢!
  • 如何把一个文本内的内容一次性写入crontab里
  • crontab提交的定时任务不能正常执行
  • crontab属于哪个包
  • 求救 Solaris crontab 问题
  • 无法用crontab???
  • 求救,关于crontab,小妹不胜感激
  • crontab 自动执行问题
  • 求救:crontab不运行 急急急啊
  • crontab 不执行


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3