How to detect if a special file is running or not with powershell?

powershell check if file exists
powershell test-path not working
powershell if file exists run command
powershell find files by extension
powershell find files by name
powershell check if multiple files exist
powershell check if file exists and delete
powershell check if folder exists

Get-Process only gives the result if a notepad or exe file is running but I want to know if a specific file (index.txt) which is in some folder is running or not in powershell

You can use the mainWindowTitle method and then select the names of the processes running. Something like this -

get-Process notepad | where-Object {$_.mainWindowTitle} | Select-Object id, name, mainwindowtitle

This will give you the list of notepads processes running, and if you find your file index.txt under the MainWindowTitle header then, you can confirm that your file is running indeed.

Get-Content, How do you check if a file is being used by another process? If you need to look for a set of sensitive files, you might want to automate the process with Microsoft PowerShell scripts to save time. For instance, the PowerShell script provided above will findall files that have “Payroll” in their name, and the Get-ChildItem -path command restricts the search to a specified folder and its subfolders.

Get-Process gets all running processes. A text file is not a process, it of course is an object opened by / in a process (whether PS started it or not), notepad, winword, etc...

PS can be used to start a process, say notepad, but PS does not own it, the exe does.

So, a file, in the context you are asking, is never running in PS, the process (running on your system) can be looked up using Get-Process (or the old Tasklist tool which Get-Process replaces) as well as the path information of the running process.

  1. Start notepad manually and open a text file.
  2. Run Get-Process and ask for all values of the notepad process.

You will see the Get-Process brings back a whole lot of info for you to select from. Note that it is the MainWindowTitle, which shows what file the Notepad process has open, but no where in this results does it say where that file (path) is ran from.

Get-Process Notepad | Select-Object *

Name                       : notepad
Id                         : 20516
...
Path                       : C:\WINDOWS\system32\notepad.exe
Company                    : Microsoft Corporation
CPU                        : 2.515625
ProductVersion             : 10.0.17134.1
Description                : Notepad
Product                    : Microsoft® Windows® Operating System
__NounName                 : Process
...
MainWindowTitle            : news-stuff.txt - Notepad
MainModule                 : System.Diagnostics.ProcessModule (notepad.exe)
...

How to Find a File and Check If It Exists with Powershell or Netwrix , How do you check if a directory exists or not in PowerShell? OK, not really "annoying to deal with," but still something that would be nice to avoid. If only there was a simple way of checking to see if that item was already being used. (I do want to note that if you use Notepad to open up a file, it will not actually lock the file even though you can clearly see it being used.

Hey, Scripting Guy! How Can I Check for the Presence or Absence of a, Run the script. Review the results: Powershell find file report. Once you have a list of files that might contain sensitive data, you might  Alternative approach for launching a new cmd.exe console window on demand:. Building on the previous approach, the following variant simply re-invokes the batch file in a new cmd.exe window on detecting that it is being run from PowerShell.

Test-Path, It will check the existence of a specific file, and if the file does not To exit a running Windows PowerShell script, you use the exit command. Taking a step back: If the intent is ultimately to process the file [content] yourself, it's better not to perform a separate test beforehand, because the file may get opened again between performing your test and your subsequent attempt to open it; instead, simply try to open the file yourself and handle any failure - see this (C#-based) answer.

PowerShell Basics: Test-Path, It can also tell whether the path syntax is valid and whether the path leads to In this case, because the PowerShell profile is a .ps1 file, the cmdlet returns $True . Test-Path does not work correctly with all PowerShell providers. elevate your credentials when running this cmdlet, use Invoke-Command. Similarly, when PowerShell runs a script it must convert the bytes in a file to characters to reconstruct the file into a PowerShell program. Since VSCode writes the file and PowerShell reads the file, they need to use the same encoding system. This process of parsing a PowerShell script goes: bytes ->

In a PowerShell script, how can I check if I'm running with , Encouraging computers to sleep when they're not in use is a great idea – until you are away from your desk and need a file on that remote  The time the file or folder was created. DirectoryName: The name of the directory. FileName: The name of the file. LastAccess: The date the file or folder was last opened. LastWrite: The date the file or folder last had anything written to it. Security: The security settings of the file or folder. Size: The size of the file or folder.

Comments
  • If you enable OpenFiles /local on via CMD (and reboot) then you can run OPENFILES /Query in CMD to retrieve a list of all open files with locks. As .txt files don't create locks, this wouldn't work for this file format, but would work for other formats (such as office files). What is the end purpose, or why do you need this information? Maybe there's another approach that could be used to meet the end needs.
  • Just to add to the above comment, who/what would be opening this file? Is this something that would be in your control, because you can lock a .txt file by using notepad >> filetolock.txt in CMD and then see it via OPENFILES /Query
  • Possible duplicate of PowerShell script to check an application that's locking a file?
  • @BACON: Certainly related, but not quite a duplicate: the linked question wants to know who locked a given file, whereas this question seems to ask only for whether it is locked. The former seems to require installation of a utility or prior configuration, which is not strictly necessary for the latter. Of course, it may turn out that the OP wanted to know who after all.
  • @mklement0 That is a noteworthy distinction. This question lacks details and clarity: it seems to want a general solution but also mentions Notepad specifically, which, according to handle.exe, does not appear to keep open handles for the loaded file. I linked the duplicate thinking "Here's a better version of what I think you're trying to ask, or close enough." Then again, you, I, and Jacob started thinking of locks under the hood when the question doesn't mention them; maybe it really is asking if any application has a file loaded, for which I'm not sure there can be a general solution.
  • But mainwindowtitle usually doesn't include the path, so the requirement want to know if a specific file (index.txt) which is in some folder can't be met for sure.