我想知道如何以编程\
方式在文件路径中出现的空格前面添加。我fs.readdir
用来获取目录的内容,如果我没有将路径中的空格转义,则会收到ENOENT
错误消息,因为未转义的路径在 UNIX 中无效。我想得到以下结果:
/path/with\ spaces/in/them/
但是,我在 NODE REPL 中遇到了 REGEX 的问题。当我做 :
var path = '/path/with spaces/in/them/';
var escapedPath = path.replace(/(\s)/, "\\ ");
我得到结果:
'/path/with\\ spaces/in/them/'
当我尝试在 Chrome 控制台中运行相同的代码时,我得到:
"/path/with\ spaces/in/them/"
这是想要的效果。
我不确定我是否遗漏了什么或者这是一个错误。我很困惑,因为 Node 运行在与 Chrome 相同的 Javascript 引擎上,所以我认为这些表达式的解释是相同的。
如果有人知道解决此问题的方法,请告诉我。也许我错过了一些东西。我只需要在将路径传递到之前能够逃脱路径,fs.readdir
这样我就可以避免这些错误。
谢谢!