我在Windows中使用zip.directory
有问题。
这是我要创建的文件结构:
.
├── file1.txt
├── file2.txt
└── file3.txt
file2.txt
和file3.txt
来自一个名为dir
的目录。
这是我在服务器上的代码:
const zip = archiver('zip')
zip.append('some text', { name: 'file1.txt' })
zip.directory('dir/', '.')
zip.finalize()
这在Mac上正常工作。但是,使用'.'
将所有内容都放在同一目录中似乎不起作用(基本上只有file1.txt
才能进入ZIP(。
但是,以下确实有效:
const zip = archiver('zip')
zip.append('some text', { name: 'file1.txt' })
zip.directory('dir/', 'somename')
zip.finalize()
但是,这给出了这样的文件夹结构:
.
├── file1.txt
└── somename
├── file2.txt
└── file3.txt
这不是我真正想要的。有办法解决吗?
我在#node.js irc频道上收到答案。
替换此行:
zip.directory('dir/', '.')
with:
zip.directory('dir/', '../')
修复了问题。