exec(
path,args,opts) ->proc,err
Execute an external command asynchronously
Spawns an external command as a child process with non-blocking pipe I/O
and pidfd-based exit notification. Returns a process handle with async
send, recv, recv_stderr, read_all, wait, and kill methods.
Options:
cwd (string): working directory for childenv (table): array of "KEY=VALUE" strings, replaces child environmentstderr_to_stdout (boolean): merge stderr into stdout streamnew_session (boolean): start the child in a session of its own, with no
controlling terminal, so a terminal's Ctrl+C reaches the parent aloneThe child starts with no signal blocked and every caught handler at its
default, whatever signals the loop holds through on_signal. A send to a
child that has closed its stdin or exited answers nil, "closed" and raises
no SIGPIPE.