繁体   English   中英

节点:生成命令并将结果打印到文件

[英]Node: spawn a command and print results to a file

如果我想列出目录的文件并将结果保存在res.txt中,我可以运行命令

ls -l > res.txt

现在我想在 Node.js 的主进程产生的进程中做同样的事情。

我天真地尝试过这个

spawn(
  'ls',
  ['-l', '>', 'res.txt'],
);

但不起作用。 有什么方法可以实现我想要的吗?

经过一番谷歌搜索后,我发现shell: true选项可以解决问题。

所以,如果我想要一个衍生进程运行一个命令,将它的 output 流式传输到一个文件,我可以使用这种方法

spawn(
  'ls -l > res.txt',
  [],
  {shell: true}
);

所以从节点文档中可以找到:

https://nodejs.org/api/child_process.html#child_processspawncommand-args-options

const { spawn } = require('child_process');
const ls = spawn('ls', ['-lh', '/usr']);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM