nodejs spawn "su user -c 'ls -la'" 不工作
nodejs spawn "su user -c 'ls -la'" not working
我无法生成简单的命令行: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
生成这个命令吗?
将您的 "ls -la" 分成数组中的两项。
var childArgs = [
'username',
'-c',
'ls',
'-la'
];
仅当我删除双引号时它才有效
var childArgs = [
'spawnuser',
'-c',
'ls -la'
];
我无法生成简单的命令行: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
生成这个命令吗?
将您的 "ls -la" 分成数组中的两项。
var childArgs = [
'username',
'-c',
'ls',
'-la'
];
仅当我删除双引号时它才有效
var childArgs = [
'spawnuser',
'-c',
'ls -la'
];