Javascript Don';t包括带有节点tar的存档的绝对路径
我有一个目录,里面有很多目录和文件,我想把它们添加到tar中。 我用它的包装。我在Javascript Don';t包括带有节点tar的存档的绝对路径,javascript,node.js,tar,Javascript,Node.js,Tar,我有一个目录,里面有很多目录和文件,我想把它们添加到tar中。 我用它的包装。我在path.resolveexec之后传递两个参数:源字符串和目标字符串。最后是tar.gz,它包含目标之前的绝对路径 以下是我所做的: const path = require('path'); const tar = require('tar'); const { promisify } = require('util'); const tarCreateAsync = promisify(tar.c); co
path.resolve
exec之后传递两个参数:源字符串和目标字符串。最后是tar.gz,它包含目标之前的绝对路径
以下是我所做的:
const path = require('path');
const tar = require('tar');
const { promisify } = require('util');
const tarCreateAsync = promisify(tar.c);
const src = path.resolve(__dirname, 'test-data');
const dst = path.resolve(__dirname, 'output-data');
async function addToTar(src, dst) {
await tarCreateAsync(
{
gzip: true,
file: path.resolve(dst, 'static.tgz'),
},
[src]
)
}
addToTar(src, dst);
我看过这篇文章,但API已经改变了,锚没有显示任何内容
还尝试了
preservepath
选项,但没有效果解决它,设置基本路径值的C
或cwd
选项
看起来像这样
await tarCreateAsync(
{
gzip: true,
file: path.resolve(dst, 'static.tgz'),
cwd: path.resolve(__dirname),
},
['test-data']
)