gpt4 book ai didi

powershell - powershell脚本-创建不包含某些文件和文件夹的zip文件

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

我正在尝试创建powershell脚本函数来压缩除某些文件夹和文件之外的文件夹,这是我的代码,该代码创建包括所有文件和文件夹的zip文件

# Zip creator method

function create-zip([String] $aDirectory, [String] $aZipfile){
[string]$pathToZipExe = "C:\Program Files\7-zip\7z.exe";
[Array]$arguments = "a", "-tzip", "$aZipfile", "$aDirectory";
& $pathToZipExe $arguments;
}

但我想排除* .tmp文件以及bin和obj文件夹

我发现 Get-ChildItem "C:\path\to\folder to zip" -Recurse -Exclude *.txt, *.pdf | %{7za.exe a -mx3 "C:\path\to\newZip.zip" $_.FullName}可以作为powershell命令正常工作,但是如何在脚本文件的功能中使用它

Plz建议...

最佳答案

如果该单行代码有效,则将其放入函数中非常简单:

function Create-Zip([string]$directory, [string]$zipFile, [string[]]$exclude=@())
{
$pathToZipExe = "C:\Program Files\7-zip\7z.exe"
Get-ChildItem $directory -Recurse -Exclude $exclude |
Foreach {& $pathToZipExe a -mx3 $zipFile $_.FullName}
}

如果需要排除目录,则将Get-ChildItem行更改为:
    Get-ChildItem $directory -Recurse -Exclude $exclude | Where {!$_.PSIsContainer} |

关于powershell - powershell脚本-创建不包含某些文件和文件夹的zip文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12471408/

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