我在这里的答案可能是你正在寻找的帮助: https://stackoverflow.com/a/21397517/2083509 段:
AWS_ACCESS_KEY="blah-blah-dingle-smith" # changeme
AWS_SECRET_KEY="yankee-doodle-shit-no-stank" # changeme
JAVA_HOME="/usr/lib/jvm/java"
EC2_HOME="/opt/aws/apitools/ec2"
EC2_URL="https://us-west-2.ec2.amazonaws.com/" # changeme
PATH="$PATH:/opt/aws/bin" # is dir contains a symlinks of tool binaries
export AWS_ACCESS_KEY AWS_SECRET_KEY JAVA_HOME EC2_HOME EC2_URL PATH
添加上述直接进入您的testshutdown.sh
脚本。或者给它自己的脚本并在你的crontab作业之前加载它。例如:* * * * * /home/ubuntu/.script/aws-env.sh; /home/ubuntu/.script/testshutdown.sh
或我建议从链接(源a * .conf)中提出的建议使用完全访问管理密钥进行特定任务是不可取的。 ;)
在cron本身设置你的SHELL可能是明智的。将SHELL=/bin/bash
替换或添加到您的cron。即使你有适当的屁股,它仍然是一个很好的决定。试着找出你知道为什么命令工作的原因,你可能会开车疯狂。
您可能会错过ec2命令行工具在cron使用的会话中需要的一些环境变量。在运行ec2命令之前,您可能需要在脚本中尝试定义它们。 – datasage 2013-03-21 13:44:59