我在 NodeJS 环境(在 linux 上运行)中使用 Archiver 来创建一个结构如下的 ZIP:
/root
/documents
/doc1.pdf
/doc2.pdf
/doc3.pdf
/clientA
/doc1.pdf < symlink to ../documents/doc1.pdf
/clientB
/doc3.pdf < symlink to ../documents/doc3.pdf
使用 ArchiverJS 的这些功能:
archiverInstance.append(filestream, {name: '/root/documents/doc1.pdf'})
archiverInstance.symlink('/root/clientA/doc1.pdf', '../documents/doc1.pdf')
当我在 linux 上下载这个 ZIP时,我可以打开符号链接。
# linux ubuntu 19.04
ls -l ~/root/clientA
lrwxrwxrwx 1 usr usr 28 oct 11 11:51 doc1.pdf -> ../documents/doc1.pdf`
但是当我在 Windows 10 上下载此 ZIP时,符号链接被破坏,使用 Windows 资源管理器中的标准“提取”按钮。
# windows 10
cd root/clientA
dir
10/11/2019 02:49 AM <DIR> .
10/11/2019 02:49 AM <DIR> ..
10/11/2019 02:49 28 doc1.pdf < click on it = PDF corrupted
1 File(s) 28 bytes
2 Dir(s)
为什么这在 Windows 10 上不起作用?有没有其他方法可以让它发挥作用?
谢谢