You know how I said that I'd leave
await exec(`unzip -p ${zip_path} '${escape_shell_single_quoted(file_path)}' | file -i -`)
as-is until it caused a problem? It causes a problem.
In the logs, I see two examples:
Error: unzip|file error: caution: filename not matched: platypus/options/Icon^M
Error: unzip|file error: caution: filename not matched: 4th1hrComp/agent_4F[1].A.taf
I believe both are caused by the shell getting confused by filenames.
I'm not interested in playing whack-a-mole with shell escapes. We need to use execFile().
(Reading the data and then writing it into a separate execFile('file') is okay.)