Search code examples
powershellcopy-item

How to force the copy of a file using powershell


I'm using powershell to copy file to a remote computer witht he following command :

Copy-Item -Path [MyPath]\* -Destination \\[server]\[MyPath] -force

It's working great, but sometime I'm receiving the following error message: "The process cannot access the file [...] because it is being used by another process.".

Is it possible to force the file to be copy even if it's in use?


Solution

  • The only way to do that is to get rid of the handle the process has to the file you are overwriting.

    It's either a service or a desktop application accessing the file. You can find out what has access to the file using handle.exe from SysInternals.

    Once you know what is accessing the file you can stop/kill it remotely (assuming you have permissions to do so).