rob*_*lep 15
听起来你正在尝试跨"设备"(分区)边界重命名文件.
说这/tmp
是一个不同的分区/
.这意味着你不允许这样做:
fs.rename('/tmp/myfile.txt', '/myfile.txt', ...)
Run Code Online (Sandbox Code Playgroud)
(同样适用于fs.renameSync()
,显然)
如果要这样做,则需要先将文件复制到新位置,然后删除旧文件.有一些模块,mv
可以帮助你.
它用于Linux上的EXDEV:
请参见手册man rename
页:
EXDEV oldpath和newpath不在同一个挂载的文件系统上.(Linux允许文件系统在多个点安装,但rename()在不同的安装点上不起作用,即使两者都安装了相同的文件系统.)
ERROR_NOT_SAME_DEVICE
Windows上有此错误,请参阅:
有关详情,请参阅:
winerror.h 0x80070011
#define ERROR_NOT_SAME_DEVICE
系统无法将文件移动到其他磁盘驱动器.
小智 5
我猜您正试图从/temp
表单中复制文件夹中的文件。我解决了它的应对,而不是重命名
fs.copyFile(oldpath, newpath, function (err) {
if (err) throw err;
res.write('File uploaded and moved!');
res.end();
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
17575 次 |
最近记录: |