前端之家收集整理的这篇文章主要介绍了
centos – 为什么cd不会改变crontab中的当前目录?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的
用户的crontab中,在CentOS系统上,我有这样的东西:
58 12 * * * cd /home/joe/dev; echo `pwd` | logger
这在/ var / log / messages中输出:
Feb 19 12:58:01 srv01 joe: /home/joe
而不是输出:
Feb 19 12:58:01 srv01 joe: /home/joe/dev
输出pwd时为什么不保留目录?
这些命令是独立运行的,因此与期望它们在相同的shell /环境中运行不同.通过创建执行所需命令然后从crontab
调用脚本的shell脚本,可能会更好.
更新:以上是一个猜测,和/或建议的可能性(作为评论如此简洁和积极指出).所以我决定在CentOS 6.6上测试……我错了……下面的crontab条目工作正常:
* * * * * echo \`pwd` |logger; cd /home; echo `pwd` |logger;
这应该对你有用…我仍然坚持认为你最好通过调用脚本而不是crontab中的单独命令来服务…但这是一个偏好(所以请在评论中表示友好…).