PowerShell学习入门 - 5 (文件压缩与解压缩)

本文提供了一套使用PowerShell脚本压缩文件及文件夹的方法,包括创建ZIP文件、添加文件到ZIP文件、列出ZIP文件中的文件、从ZIP文件中提取文件等功能。适用于备份和数据整理场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用PowerShell压缩文件及文件夹

直接写代码了哈,在做备份的时候一定用得到的
function New-Zip
{
	param([string]$zipfilename)
	set-content $zipfilename ("PK" + [char]5 + [char]6 + ("$([char]0)" * 18))
	(dir $zipfilename).IsReadOnly = $false
}
#usage: new-zip c:\demo\myzip.zip

function Add-Zip
{
	param([string]$zipfilename)

	if(-not (test-path($zipfilename)))
	{
		set-content $zipfilename ("PK" + [char]5 + [char]6 + ("$([char]0)" * 18))
		(dir $zipfilename).IsReadOnly = $false
	}

	$shellApplication = new-object -com shell.application
	$zipPackage = $shellApplication.NameSpace($zipfilename)

	foreach($file in $input)
	{
            $zipPackage.CopyHere($file.FullName)
            Start-sleep -milliseconds 500
	}
}
#usage: dir c:\demo\files\*.* -Recurse | add-Zip c:\demo\myzip.zip

#List the files in a zip
function Get-Zip
{
	param([string]$zipfilename)
	if(test-path($zipfilename))
	{
		$shellApplication = new-object -com shell.application
		$zipPackage = $shellApplication.NameSpace($zipfilename)
		$zipPackage.Items() | Select Path
	}
}
#usage: Get-Zip c:\demo\myzip.zip

function Extract-Zip
{
	param([string]$zipfilename, [string] $destination)

	if(test-path($zipfilename))
	{
		$shellApplication = new-object -com shell.application
		$zipPackage = $shellApplication.NameSpace($zipfilename)
		$destinationFolder = $shellApplication.NameSpace($destination)
		$destinationFolder.CopyHere($zipPackage.Items())
	}
}
#usage: extract-zip c:\demo\myzip.zip c:\demo\destination


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值