我正在尝试执行Powershell脚本(该脚本正在解压缩源路径中与.zip文件夹同名的文件夹)
powershell脚本:
param([string] $ sourcepath) $ sourcepath =“ F:\ Worflow \”
函数解压缩($ file){
$ dirname = $ sourcepath +(Get-Item $ file).Basename
New-Item -Force -ItemType目录-Path $ dirname
expand-archive -path $ file -DestinationPath $ dirname -F
}
$ zipFiles = Get-LongChildItem -Path $ sourcepath -Recurse |哪里对象{$ _。Name -like“ * .zip”}
foreach($ zipFiles中的$ file) { 解压缩($ file)
}
SSIS执行过程任务参数:
“-ExecutionPolicy不受限制-文件C:\ MyDataFiles \ Unzip.ps1”
在PS实例中运行时,powershell脚本运行正常。但是代码从SSIS任务失败并出现错误: Get-LongChildItem:术语“ Get-LongChildItem”不能识别为cmdlet,函数,脚本文件或 可操作的程序。检查名称的拼写,或者是否包含路径,请验证路径是否正确,然后尝试 再次。 在C:\ MyDataFiles \ Unzip.ps1:17 char:13 + $ zipFiles = Get-LongChildItem -Path $ sourcepath -Recurse | Where-Obj ... + ~~~~~~~~~~~~~~~~~ + CategoryInfo:ObjectNotFound:(Get-LongChildItem:String)[],CommandNotFoundException + FullyQualifiedErrorId:CommandNotFoundException
任何帮助将不胜感激。目标是使用Powershell压缩和解压缩文件夹或文件。
答案 0 :(得分:0)
好像您在不先加载模块的情况下尝试使用命令。
Get-LongChildItem是开源模块PSAlphaFS的一部分
尝试首先在脚本中导入模块。 当然也需要安装它。 ;)