gpt4 book ai didi

batch-file - makecab - 从文件夹中的所有文件创建 cab 文件

转载 作者:行者123 更新时间:2023-12-03 01:22:14 24 4
gpt4 key购买 nike

我的目录中有一堆文件。我尝试了 makecab,但它没有将文件夹中的所有文件都包含到 cab 文件中。

makecab /d "C:\Users\crtorres\Documents\- SouthPacific Project 2014\- Projects\Sales Doc Center\New Region" test.cab

以下方法有效,但 cab 文件只有 list 文件。makecab list .xml测试.cab

最佳答案

我终于创建了一个实际上可以正确执行此操作的脚本(使用 powershell)

它不使用 WSPBuilder,因为我经常被外包,并且下载新软件/额外文件很不方便。这是 OOTB 的作品。

function compress-directory([string]$dir, [string]$output)
{
$ddf = ".OPTION EXPLICIT
.Set CabinetNameTemplate=$output
.Set DiskDirectory1=.
.Set CompressionType=MSZIP
.Set Cabinet=on
.Set Compress=on
.Set CabinetFileCountThreshold=0
.Set FolderFileCountThreshold=0
.Set FolderSizeThreshold=0
.Set MaxCabinetSize=0
.Set MaxDiskFileCount=0
.Set MaxDiskSize=0
"
$dirfullname = (get-item $dir).fullname
$ddfpath = ($env:TEMP+"\temp.ddf")
$ddf += (ls -recurse $dir | where { !$_.PSIsContainer } | select -ExpandProperty FullName | foreach { '"' + $_ + '" "' + ($_ | Split-Path -Leaf) + '"' }) -join "`r`n"
$ddf
$ddf | Out-File -Encoding UTF8 $ddfpath
makecab.exe /F $ddfpath
rm $ddfpath
rm setup.inf
rm setup.rpt
}

如果我做错了什么和/或可以做得更好,请告诉我。

供引用:

http://www.pseale.com/blog/StrongOpinionSayNoToMAKECABEXE.aspx

注意:Jerry Cote 所做的更改,请参阅编辑注释

关于batch-file - makecab - 从文件夹中的所有文件创建 cab 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19411440/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com