dsp*_*099 0 javascript windows escaping path node.js
var exec = require('child_process').exec
var cmd = 'C:\\Users\\Johnny Cash\\Desktop\\executeme.exe'
exec(cmd, function(e, stdout, stderr) {
console.log(e);
console.log(stdout);
console.log(stderr);
});
Run Code Online (Sandbox Code Playgroud)
"C:\ Users\Johnny"未被识别为内部或外部命令
这必须是有史以来最新的问题,但如何在窗户上使用空格来逃避这些路径呢?它在这个空间被切断了,我所做的一切(单人或双人事先逃脱)似乎都可以解决问题.是否exec()做了一些格式,我不知道的?
exec将command参数字符串中的任何空格视为参数分隔符,因此您需要对整个路径进行双引号,以将其全部视为要运行的命令的路径:
var cmd = '"C:\\Users\\Johnny Cash\\Desktop\\executeme.exe"'
Run Code Online (Sandbox Code Playgroud)
但是,使用它可能更execFile简洁,因为它的file参数始终被视为文件路径,并带有单独的args参数.那么你应该能够省略双引号包装.execFile无论如何都有点精简,因为它没有像子一样执行子shell exec.
| 归档时间: |
|
| 查看次数: |
2134 次 |
| 最近记录: |