erlang Elixir,我如何运行需要管理员权限的CMD命令?

wvyml7n5  于 2022-12-08  发布在  Erlang
关注(0)|答案(1)|浏览(466)

我在Windows环境中,我需要我的程序能够以管理员身份运行CMD命令...
当我尝试通过System.cmd运行时,返回的异常是
消息:Unable to remove service (not enough privileges?)
编辑:
使用iex-S混合程序工作正常
但是当我生成发行版并运行erlsrvx 1 e0f1x时
它作为服务安装在Windows上,但没有在CMD上运行的权限

wvmv3b1j

wvmv3b1j1#

通常,这可以通过授予您的用户以sudo运行程序的权限(无需密码)来解决。
/etc/sudoers中:

your_user        ALL = NOPASSWD: /usr/bin/service_to_run

然后在您的elixir应用程序中:

System.cmd("sudo", ["/usr/bin/service_to_run"], env: [{"FOO", "bar"}])

相关问题