Cronjob 不适用于本地 asdf elixir 路径

问题描述 投票:0回答:1

我的 crontab 文件如下所示:

*/1 * * * * /Users/dmitriy/.asdf/shims/elixir ~/work/scripts/my_script.exs

那个脚本不起作用。据我了解,cron无法检测到elixir的位置。我在 macOS Ventura 上运行它。

如何解决这个问题?

cron elixir macos-ventura asdf
1个回答
0
投票

我在

macOS 12.5.1
,并且我也使用 asdf 安装了 elixir。我的 elixir 路径与你的相同,但用的是我的用户名:

*/1 * * * * /Users/7stud/.asdf/shims/elixir

我使用了我的 Elixir 脚本的完整路径:

*/1 * * * * /Users/7stud/.asdf/shims/elixir /Users/7stud/elixir_programs/my_prog.ex

my_prog.ex 包含:

IO.puts "Cron job just finished"

我将 Elixir 脚本的输出重定向到日志文件:

*/1 * * * * /Users/7stud/.asdf/shims/elixir /Users/7stud/elixir_programs/my_prog.ex >> /Users/7stud/cron_output.log 2>&1

这是我在

cron_output.log
中看到的内容:

/Users/7stud/.asdf/installs/elixir/1.16.0-otp-26/bin/elixir: line 247: exec: erl: not found
/Users/7stud/.asdf/installs/elixir/1.16.0-otp-26/bin/elixir: line 247: exec: erl: not found
/Users/7stud/.asdf/installs/elixir/1.16.0-otp-26/bin/elixir: line 247: exec: erl: not found
/Users/7stud/.asdf/installs/elixir/1.16.0-otp-26/bin/elixir: line 247: exec: erl: not found
/Users/7stud/.asdf/installs/elixir/1.16.0-otp-26/bin/elixir: line 247: exec: erl: not found
/Users/7stud/.asdf/installs/elixir/1.16.0-otp-26/bin/elixir: line 247: exec: erl: not found

...
...

貌似找不到erl,即erlang命令。

© www.soinside.com 2019 - 2024. All rights reserved.