我在上一个问题上提到我在这里找到了所有相关的日志文件位置和命令:https://cloud.google.com/compute/docs/startupscript#rerunthescript
我的情况:
启动脚本字面上以“exit 69”开头,用于测试目的。
我运行的命令:
sudo google_metadata_script_runner --script-type startup
echo $?
输出:
0
/var/log/daemon.log
的相关内容(重复):
Sep 19 15:15:32 api-0 startup-script:INFO启动启动脚本。
9月19日15:15:32 api-0 startup-script:INFO在元数据中找到启动脚本 9月19日15:15:32 api-0 startup-script:INFO startup-script:返回码69.
9月19日15:15:32 api-0 startup-script:INFO完成运行的启动脚本。
有没有一种很好的方法可以在我的脚本中获取返回代码而不解析/var/log/daemon.log
并希望它实际上已经结束并且我不会抓错了?
答案 0 :(得分:1)
嗯,我没有使用script_runner的经验,但我有一个解决方案。
在脚本中使用以下内容实现Exit()函数:
function Exit(code) {
echo $code > /tmp/runner_code
exit $code
}
执行脚本后,并且只是cat /tmp/runner_code
。
这会解决你的问题吗?