gpt4 book ai didi

javascript - 一种从 Node.js 调用 execl、execle、execlp、execv、execvP 或 execvp 的方法

转载 作者:行者123 更新时间:2023-11-30 09:55:27 34 4
gpt4 key购买 nike

POSIX 系统公开了一系列 exec 函数,这些函数允许将可能不同的东西加载到当前进程中,保持打开的文件描述符、进程标识符等。

这可以出于多种原因完成,在我的例子中,这是自举——我想更改我自己进程的命令行选项,然后在现有进程上重新加载它,这样就没有子进程了。

不幸的是,令我惊讶的是,我找不到在 Node.js 中调用任何 exec* 函数的方法。那么,用其他镜像替换当前正在运行的 Node.js 进程的正确方法是什么?

最佳答案

我创建了一个模块来从 NodeJS 调用 execvp 函数:https://github.com/OrKoN/native-exec

它是这样工作的:

var exec = require('native-exec');

exec('ls', {
newEnvKey: newEnvValue,
}, '-lsa'); // => the process is replaced with ls, which runs and exits

由于它是 native Node 插件,因此需要安装 C++ 编译器。在 Docker、Mac OS 和 Linux 上运行良好。可能在 Windows 上不起作用。使用 Node 6、7 和 8 进行测试。

关于javascript - 一种从 Node.js 调用 execl、execle、execlp、execv、execvP 或 execvp 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34290403/

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