PowerShell zip文件同步
在PowerShell脚本中,我要先压缩文件夹,然后再删除该文件夹。我运行以下命令(我不记得在哪里找到该代码片段): function Compress-ToZip { param([string]$zipfilename) if(-not (test-path($zipfilename))) { set-content $zipfilename ("PK" + [char]5 + [char]6 + ("$([char]0)" * 18)) (Get-ChildItem $zipfilename).IsReadOnly = $false } $shellApplication = new-object -com shell.application $zipPackage = $shellApplication.NameSpace($zipfilename) foreach($file in $input) { $zipPackage.CopyHere($file.FullName) } } 该代码段实际上以异步方式压缩文件夹。实际上,Shell.Application对象的CopyHere方法开始压缩,并且不等待其完成。然后,我脚本的下一个语句变得混乱(因为zip文件处理未完成)。 有什么建议?如果可能的话,我想避免添加任何可执行文件,而是保留纯Windows功能。 我的PS1文件的全部内容减去数据库的实际名称。该脚本的目标是备份一组SQL db,然后将备份压缩到一个具有当前日期的文件夹中的单个包中: $VerbosePreferenceBak = $VerbosePreference $VerbosePreference = "Continue" add-PSSnapin …