Rud*_*Lee 3 javascript shell node.js
我有这个 NodeJS 脚本:
var util = require('util'),
process = require('child_process'),
ls = process.exec('test.sh');
ls.stdout.on('data', function (data) {
console.log(data.toString());
ls.stdin.write('Test');
});
Run Code Online (Sandbox Code Playgroud)
和这个 shell 脚本:
#!/bin/bash
echo "Please input your name:";
read name;
echo "Your name is $name";
Run Code Online (Sandbox Code Playgroud)
我尝试运行 NodeJS 脚本,但它卡在“请输入您的名字:”处。有谁知道如何将 NodeJS 脚本的输入发送到 shell 脚本?
谢谢
你必须这样说:
ls.stdin.write('test\n');
Run Code Online (Sandbox Code Playgroud)
或者
如果您希望使用来自用户的输入,您可以继承标准流spawn。
像这样:
var spawn = require('child_process').spawn;
spawn('sh',['test.sh'], { stdio: 'inherit' });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4244 次 |
| 最近记录: |