我在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上运行正常。但是,使用'.'
将所有内容放在同一目录中似乎无法在Windows上运行(基本上只有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
这不是我真正想要的。有办法解决这个问题吗?
答案 0 :(得分:0)
我在#node.js IRC频道上收到了答案。
取代这一行:
zip.directory('dir/', '.')
使用:
zip.directory('dir/', '../')
解决了这个问题。