1

背景:我和我的同事都以“root”用户登录AIX服务器,登录后每个人都加载他们的.profile/.kshrc/.netrc等,然后开始他们的工作,执行他们自己的shell脚本。

问题:当我 crontab 一个脚本时,它会失败,因为其中的一些 cmds 只在我自己的环境中定义。即使我在脚本中添加 .profile/.kshrc/.netrc 的语句,失败仍然存在。看来它只是不记得以前的系统设置。

问题:如何编辑脚本以使任务在我自己的环境中运行?

4

1 回答 1

1

由 cron 运行的脚本应该设置自己的 PATH 以确保它从已知情况开始。

列出脚本使用的所有外部命令,列出它们所在的目录,然后在脚本顶部添加一行:

PATH=/first/dir:/second/dir

ETC...

在大多数情况下,您希望包含/usr/bin和/或/bin-- 对于以 root 身份运行的脚本/usr/sbin是另一个最爱。

于 2013-08-18T09:31:38.580 回答