Is there a Powershell command to check if a file is in use by another user? If not, what would it take to write a script that can?
You can never tell if a file is currently being used only that it was recently being used. The reason why is that the moment the script returns the file could be closed by whatever program was previously using it. Writing scripts like this will only lead to flaky behavior.
A much better approach is to just do whatever the script was going to do if the file wasn’t in use and catch the exceptions that result from a use conflict. The end result will be a much simpler and more reliable program.