我当前正在尝试创建一个Nodejs脚本,该脚本使用7zip从zip文件中提取特定文件。我终于完成了所有设置,只需要编辑文件列表即可对此进行归档。但这变得很耗时。
我已经尝试了许多通配符语句,但这些操作都不符合我想要的方式。 在我的.zip文件中,我有一个名为“资产”的文件夹。它可以在第一个文件夹中,也可以在2个子文件夹中。
因此可能是: /assets/subfolder1/pic.png 但是也 /prefolder1/prefolder2/assets/subfolder1/subfolder2/pic.png 这些其他文件夹需要使用通配符,因为它们的名称将始终在文件之间转移。
function handleFile( strZipPath )
{
const myStream = objModZip.extractFull( strZipPath, 'S:/OUTPUT/',
{
raw: [ strValidFilesPath ],
r: true
} )
.progress( function ( files )
{
console.log( 'Some files are extracted: %s', files );
} )
.then( function ( )
{
console.log( 'Extracting done!' );
} )
// On error
.catch( function ( err )
{
console.error( err );
} );
}
和我的valid-files.txt包含以下内容: * .png
完全可以提取每个png。但是,如果我尝试指定路径,它将无法按照我想要的方式工作。例如:
"*\assets\*\*.png"
什么也没做。 有正确语法的想法吗?
€DIT:所以我也尝试了其他各种方法。 * \ assets *将所有内容完全从资产中提取出来,但不在我的组合设置中。也许可以通过结合使用文件结尾过滤器和文件夹过滤来绕过某些技术?