gpt4 book ai didi

cron - 脚本 cron 蓝调

转载 作者:行者123 更新时间:2023-12-02 17:55:28 25 4
gpt4 key购买 nike

我有一个可以从命令行正常运行的 escript 文件,即:

./escript_file

它应该是 cron 友好的,并且所有路径都是显式的,但是当我运行它时,它无法编译,并说存在坏属性

所讨论的不良属性是宏定义:

-define(COOKIE, 'somecookie').

答案

感谢 Geoff Ready 的建议,我通过打印 init:script_id() 来调查正在运行的 Erlang 版本,它打印出类似 {"OPT APN 181 O1", "R13B "} 而且,果然命令行和 cron 版本选择了不同的版本。

脚本有一个初始行:

#!/usr/bin/env escript

操作系统正在为我“寻找”Erlang。 cron 的不同环境变量意味着正在选择不同的 erlang(Geoff 的第一个答案,我有点知道但不知道它会如何影响事物)。

解决方案是强制使用起始行的版本:

#!/usr/local/lib/erlang/erts-5.7.3/bin/escript

后记

还有一个不同的 Ubuntu apt-get 安装了早期版本的 Erlang(与源安装的位置不同)以及错误的 64 位安装...

cron 环境不断回落到较旧且更模糊的安装,一直失败:(

最佳答案

也许 cron 在路径中选择了不同版本的 erlang。 Erlang R12B documentation说 escript 忽略除 include_lib 之外的预处理器指令。 Erlang R13B documentation表示预处理器正在文件上运行。这肯定可以解释行为上的差异。

关于cron - 脚本 cron 蓝调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2121011/

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