gpt4 book ai didi

linux - 从 shell 脚本将 Azure CLI 作为 cron 作业执行

转载 作者:太空宇宙 更新时间:2023-11-04 09:40:05 25 4
gpt4 key购买 nike

在 shell 脚本内输入 Azure CLI 和 Node JS 的完整路径。

#!/bin/bash
/opt/nodejs/bin/node /opt/nodejs/bin/azure vm disk list > /tmp/tmpfile

/opt/nodejs/bin/node /opt/nodejs/bin/azure vm disk upload $SRCURL $DESURL <KEY>

手动执行时,这两个命令都会成功执行。但是,当使用 crontab 执行时,vm disk list 命令有效,但 vm disk upload 不起作用。

Azure JS 脚本需要另一个 cli.js,该 cli.js 通过相对路径 var AzureCli = require('../lib/cli'); 引用,并且 cli.js 脚本需要许多其他内容通过相对路径引用的脚本。

是否有任何方法可以为 cron 提供与用户相同的环境配置文件,从而使其有效,或者是否有任何最佳方法可以使其工作而无需编辑单个 JS 文件并将相对路径重命名为绝对路径?

最佳答案

问题是因为通过 cron 执行时未设置 HOME 环境变量,从而导致 Azure 命令失败。

HOME 变量设置为脚本中特定用户的主目录时,它可以正常工作。

关于linux - 从 shell 脚本将 Azure CLI 作为 cron 作业执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22478277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com