背景: 我的同事和我都登录了一个用户“root”的AIX服务器,登录后每个人都加载他们的.profile / .kshrc / .netrc等,然后开始工作,执行他们自己的shell脚本。
问题: 当我crontab脚本时,它会失败,因为它中的一些cmd仅在我自己的环境中定义。 即使我在脚本中添加.profile / .kshrc / .netrc源代码的句子,也会失败。看来它只是记不起以前的系统设置。
问题: 如何编辑脚本以在我自己的环境中运行任务?
答案 0 :(得分:1)
cron运行的脚本应设置自己的PATH,以确保它从已知情况开始。
列出脚本使用的所有外部命令,列出它们所在的目录,然后在脚本顶部添加一行:
PATH=/first/dir:/second/dir
等等...
在大多数情况下,您希望包含/usr/bin
和/或/bin
- 对于以root /usr/sbin
方式运行的脚本是另一个最爱。