То, что вы ищете, это имя файла, над которым работает каждый процесс - если таковой имеется. 
фон
Проблема в том, что имя файла, над которым выполняется работа (в отличие от имени исполняемого файла), обычно не отображается в выводе списка задач или выводе любого другого стандартного инструмента командной строки, о котором я знаю. 
У процесса всегда есть внутренний список файлов, которые он открыл - они находятся в "дескрипторной таблице" процесса. Это видно, например, в Process Explorer, но вам нужен инструмент командной строки. И нет никакого общего способа узнать, среди всех файлов, открытых процессом, какой документ является документом, открываемым процессом для редактирования. 
Тем не мение. Некоторые приложения, в том числе Блокнот, пакет Office и многие другие, задают имя файла в заголовке окна. например, «Блокнот file1.txt» Это не в согласованной форме от одного приложения к другому. Приложение может установить заголовок своего окна на что угодно. Программа может, например, сначала указать собственное имя, а затем имя файла. Без разницы. 
Итак, вы хотите посмотреть на заголовки окон. Диспетчер задач может показывать заголовки окон, но вам нужен инструмент командной строки. Как отмечает JosefZ, tasklist /v может сделать это. (Существует также небольшая программа под названием tlist, которая сделает это. Он поставляется с пакетом средств отладки Windows.) Однако они покажут вам, помимо процессов, которые вы хотите, целую кучу процессов, которые не имеют имен окон. 
ответ
PowerShell на помощь! Попробуйте это в командной строке: (Вы не должны быть в c:\, это только пример)
c:\> powershell -command "get-Process | where-Object {$_.mainWindowTitle} | format-table id,name,mainwindowtitle -AutoSize"
Это перечислит все процессы, которые имеют непустой заголовок окна. 
Если вы хотите просто увидеть процессы, выполняющие определенную программу, например блокнот, вы можете поместить это имя перед первым каналом, например так: 
c:\> powershell -command "get-Process notepad | where-Object {$_.mainWindowTitle} | format-table id,name,mainwindowtitle -AutoSize"
Это фильтрует вывод get-Process до того, как он достигнет остальных команд. команда where-Object фильтрует непустые заголовки окон, а таблица форматов просто помещает результат в аккуратную таблицу. 
Теперь давайте сделаем это проще. Поместите следующее в файл .cmd, скажем, вы называете его wn.cmd (wn для windowname). Поместите wn.cmd в какой-то каталог, который находится на вашем пути. (Я всегда создаю каталог с именем c:\progs и добавляю его к своему пути, для таких мелочей, как этот. Я поместил инструменты sysinternals в этот каталог тоже.) 
c:\> @echo off
c:\> powershell -command "get-Process %1 | where-Object {$_.mainWindowTitle} | format-table id,name,mainwindowtitle -AutoSize"
Примеры
Теперь в командной строке ... при условии, что wn.cmd находится где-то на вашем пути ... вы можете просто набрать
c:\> wn
и вы получите полный список процессов с именованными окнами .. вот так:
   Id Name           MainWindowTitle
   -- ----           ---------------
 9596 chrome         How can I show the file NAME of each running process from the command-line in Windows? - Super ...
11980 cmd            Command Prompt - wn
10164 explorer       progs
10180 Horas          Horas - Fri 11
 2520 notepad        windownames.ps1 - Notepad
15348 notepad        notes2.txt - Notepad
 8304 OUTLOOK        Inbox - mailbox - Outlook
17312 powershell_ise Windows PowerShell ISE
 6140 TTool103       Alarm
и если вы наберете, например, 
c:\> wn notepad
вы получаете только те, на которых работает блокнот: 
   Id Name    MainWindowTitle
   -- ----    ---------------
 6240 notepad Untitled - Notepad
13096 notepad wn.cmd - Notepad
15348 notepad notes2.txt - Notepad
(Этот выбор идет по имени исполняемого файла, а не заголовку окна.) 
Кредит, где кредит должен: я нашел оригинальный "скрипт" powershell для перечисления процессов с именованными окнами на этой странице powershell.com . Упаковка в файл .cmd упрощает его использование.