# encoding: ascii # api: powershell # title: Test-FileLock # description: simle function to determine is file locked by external program or not. # version: 0.1 # author: Vadims Podans # license: CC0 # x-poshcode-id: 1363 # x-archived: 2017-04-30T12:53:08 # x-published: 2010-10-02T04:52:00 # # filter Test-FileLock { if ($args[0]) {$filepath = gi $(Resolve-Path $args[0]) -Force} else {$filepath = gi $_.fullname -Force} if ($filepath.psiscontainer) {return} $locked = $false trap { Set-Variable -name locked -value $true -scope 1 continue } $inputStream = New-Object system.IO.StreamReader $filepath if ($inputStream) {$inputStream.Close()} @{$filepath = $locked} }