我无法生成一个简单的命令行:su username -c "ls -la"
这是我的代码:
var childArgs = [
'username',
'-c',
'"ls -la"'
];
var ph = spawn('su', childArgs);
ph.stdout.on('data', function (data) {
console.log(data);
});
ph.stderr.on('data', function (data) {
console.log('stderr___' + data);
});
ph.on('close', function (code) {
console.log('close__' + code);
});
ph.on('error', function (error) {
console.log('error___' + error);
});
输出:
stderr ___ bash:ls -la:command not found
有没有办法通过nodejs
生成此命令?
答案 0 :(得分:0)
拆分你的" ls -la"分成数组中的两个项目。
var childArgs = [
'username',
'-c',
'ls',
'-la'
];
答案 1 :(得分:0)
只有删除双引号
才有效var childArgs = [
'spawnuser',
'-c',
'ls -la'
];