在文件完全SFTP传输之前过早触发了Register-ObjectEvent`Created`事件

时间:2017-11-13 12:05:57

标签: windows powershell

我想:

  1. zip文件从服务器 A 传输到服务器 B
  2. 服务器 B 将文件复制到其他文件夹中。
  3. 服务器 A 传输via SFTP

    Import-Module C:\WindowsPowerShell\Modules\Posh-SSH
    Set-SFTPFile -SessionId $SFTPSession.SessionID -LocalFile $fileName -RemotePath $SftpTarget -Overwrite
    

    服务器 B 在创建zip文件时注册一个事件来解压缩文件:

    $onCreated = Register-ObjectEvent $filePath Created -SourceIdentifier ListenFileCreated -Action{
        # Copy a zip file
        ....
    }
    

    我的问题是,# Copy a zip file在SFTP转移完成之前被触发。因此,当我尝试解压缩文件时,我得到了“文件不完整”的异常。

    任何人都知道如何设置Register-ObjectEvent仅在文件完成时触发,或者其他方式检查文件是否正在使用?

0 个答案:

没有答案