Node.js:执行unix命令时转义空格

时间:2013-04-30 11:00:51

标签: javascript node.js escaping

我使用此命令压缩node.js中的文件:

var command = '7z a ' + dest + ' ' + orig;
exec( command, function(err, stdout, stderr) { ...});

当文件包含7z a my vacation.zip my vacation.pdf

之类的空格时,会出现问题

我怎么能逃脱dest和orig?

1 个答案:

答案 0 :(得分:3)

尝试使用spawn:

var spawn = require('child_process').spawn,
    ls    = spawn('ls', ['-l', '/tmp/test with spaces']);

    ls.stdout.on('data', function (data) {
        console.log('stdout: ' + data);
    });