Команда OPENFILES - управление открытыми по сети или локально файлами.

Команда OPENFILES используется для получения списка открытых файлов и папок в среде операционных систем Windows XP и старше. Возможно получение списка файлов, открытых удаленно с использованием сетевого доступа, или полного списка, включая файлы и папки, открытые локальными процессами. Кроме того, команда позволяет выполнить отключение сеансов удаленного открытия файлов или каталогов. Для работы с данной командой требуются права администратора ( "Запуск от имени администратора" в среде Windows 7 и старше)

Формат командной строки:

OPENFILES /параметр [аргументы]

Список параметров:

/Disconnect - Отключение одного и более открытых файлов.

/Query - Отображение открытых файлов, локально и с сетевого ресурса.

/Local - Включает/отключает отображение локально открытых файлов.

/? - Вывод справки.

Для получения справки по использованию команды с конкретным параметром используется следующий формат командной строки:

OPENFILES /Disconnect /? - отобразить подсказку по использованию команды OPENFILES с параметром /Disconnect

OPENFILES /Query /? | more - выдать подсказку по использованию параметра /Query в постраничном режиме вывода на экран

OPENFILES /Local /? > D:\oflocal.txt - выдать подсказку по использованию параметра /Local в текстовый файл D:\oflocal.txt

Примеры получения списка открытых файлов


Для управления режимом построения списка открытых файлов используется глобальный переключатель списка объектов (maintain objects list) текущее значение которого можно проверить командой :

OPENFILES /Local

Если флаг "построение списка объектов" включен, то команда OPENFILES отображает список файлов и папок, открытых как локально, так и по сети. Для отключения режима отображения списка файлов, открытых локальными процессами, используется команда:

openfiles /local off

Для вступления в силу нового режима построения списка открытых файлов, может потребоваться перезагрузка системы.

Список открытых файлов отображается с использованием команды OPENFILES /Query.

Формат командной строки:

OPENFILES /Query [/S система [/U пользователь [/P [пароль]]]] [/FO формат] [/NH] /V]

Список параметров:

/S система - Подключаемый удаленный компьютер.

/U [<домен>\]пользователь - Пользовательский контекст, в котором должна выполняться эта команда.

/P [пароль] - Пароль для этого пользовательского контекста.

/FO формат - Формат, в котором следует отобразить выходной файл. Допустимые форматы: "TABLE","LIST","CSV".

/NH - Указывает, что строка заголовков столбцов не должна отображаться. Допустимо только для форматов "TABLE", "CSV".

/V - Отображать расширенную информации в результатах.

/? - Вывод справки по использованию.

Примеры:

OPENFILES /Query /? - отобразить справку по использованию команды.

OPENFILES /Query - отобразить список открытых файлов и папок с параметрами по умолчанию.

OPENFILES /Query /FO CSV /NH - отобразить список открытых файлов в формате CSV - полей, разделяемых запятой, без отображения заголовков столбцов ( /NH ).

OPENFILES /Query /FO TABLE /V - отобразить список открытых файлов в виде таблицы (TABLE) с включением дополнительной информации (/V) об имени пользователя и идентификаторе процесса (PID). По умолчанию, используется список в формате таблицы, поэтому параметр /FO TABLE можно не указывать.

OPENFILES /Query /S <система> /U <пользователь> /P <пароль> - отобразить список открытых файлов на удаленном компьютере, с использованием имени пользователя и пароля, задаваемых в командной строке.

OPENFILES /S SERVER /U mydonain\user1 /P mypass - отобразить список открытых файлов на удаленном компьютере SERVER . Для выполнения команды на удаленном компьютере используется имя пользователя user1 в домене mydomain и пароль mypass. Если имя пользователя и пароль не заданы - используется учетная запись, в контексте которой выполняется команда OPENFILES

OPENFILES /S 192.168.0.1 /U mydonain\user1 /P mypass - то же, что и в предыдущем примере, но вместо имени удаленного компьютера, используется его IP-адрес.

OPENFILES /Query > C:\OpenedFiles.txt - записать результаты выполнения команды в текстовый файл C:\OpenedFiles.txt

Пример списка открытых файлов, полученного по команде OPENFILES /Query:

Список файлов, открытых локально:
----------------------
ID
=====
8
48
8
8
668
. . .
Имя процесса
===============
dwm.exe
dwm.exe
taskhost.exe
explorer.exe
explorer.exe

Открыть файл (Путь\исполнимый файл)
==================================
C:\Windows\System32
C:\Windows\System32\ru-RU\dwm.exe.mui
C:\Windows\System32
C:\Windows\System32
C:\Windows\Fonts\StaticCache.dat



ID - уникальный идентификатор открытого файла или папки.

Имя процесса - имя процесса, открывшего файл или папку.

Открыть файл (Путь\исполнимый файл) - очевидно, не самый удачный перевод на русский язык. В данной колонке отображается имя и путь открытого файла или папки.

При использовании параметра /V в таблицу добавляются колонки:

Пользователь - имя пользователя, в контексте учетной записи которого открыт файл.

PID - уникальный идентификатор процесса, который открыл файл. В системе может быть несколько процессов имеющих оно и то же имя исполняемого файла (svchost.exe, cmd.exe и т.п.) однако каждый из них имеет уникальный PID, по значению которого можно выделить конкретный процесс. Пример отображаемой таблицы, полученной при выполнении команды с параметром /V:

ID
====
8
48
8
8
668
Пользователь
============
user1
user1
user1
user1
user1
PID
========
3284
3284
3292
3348
3348
Имя процесса
=============
dwm.exe
dwm.exe
taskhost.exe
explorer.exe
explorer.exe
Открыть файл (Путь\исполнимый файл)
==========================
C:\Windows\System32
C:\Windows\System32\ru-RU\dwm.exe.mui
C:\Windows\System32
C:\Windows\System32
C:\Windows\Fonts\StaticCache.dat


Пример таблицы открытых файлов, при выключенном переключателе построения списка локальных объектов ( параметр /Local OFF ) :

Информация: Флаг "построение списка объектов" должен быть включенным, чтобы видеть открытые локально файлы. Подробнее смотрите Openfiles /?.

Файлы, открытые на общих сетевых ресурсах:
------------------------------------------

ID
======
0
2
4
Пользователь
============
USER1
USER2
USER2
Тип
=======
Windows
Windows
Windows
Открытый файл (Путь\файл)
========================
C:\ERDC.7_64
C:\ERDC.7_64
C:\ERDC.7_64\bootmgr


В случае расширенного отображения данных ( параметр /V ), в таблицу добавляются колонки с именем узла, количеством блокировок при совместном использовании одного и того же файла разными пользователями ( #Locks ) и режим открытия (Чтение, Запись, Запись\Чтение):

Имя узла
========
TEST7
TEST7
ID
======
0
50
Пользователь
============
USER1
USER2
Тип
=======
Windows
Windows
#Locks
======
0
0
Режим открытия
==============
Чтение
Чтение
Открытый файл (Путь\файл)
========================
C:\ERDC.7_64
C:\EFI\microsoft\boot


Принудительное отключение сеансов удаленного открытия файлов


Для отключения файлов и папок, которые были удаленно открыты на общем ресурсе, используется параметр /Disconnect. Необходимо учитывать, что команда OPENFILES не предназначена для полного запрета сетевого доступа к файлам и папкам, а всего лишь выполняет сброс отдельной удаленной сессии.

Формат командной строки:

OPENFILES /Disconnect [/S система [/U пользователь [/P [пароль]]]] {[/ID идентификатор] /A пользователь] [/O режим]} [/OP открытый файл]

Где:

/S система - Подключаемый удаленный компьютер.

/U [домен\]пользователь - Пользовательский контекст, в котором должна выполняться эта команда.

/P [пароль] - Пароль для этого пользовательского контекста.

/ID идентификатор] - Отключение всех открытых файлов по идентификатору. Допускается использование подстановочного символа "*".

/A пользователь - Отключение всех открытых файлов указанным в параметре пользователем. Допускается использование "*".

/O режим - Отключение всех открытых файлов, с указанным в параметре режимом. Допустимые значения параметра: Read,Write или Read/Write. Допускается использование подстановочного знака"*".

/OP открытый файл - Отключение всех файлов, открытых указанным в параметре файлом. Допускается использование подстановочного символа "*".

/? - Вывод справки по использованию.

Примеры использования:

OPENFILES /Disconnect /ID 1 - сбросить подключение к файлу или папке с идентификатором 1

OPENFILES /Disconnect /A user1 - сбросить подключения, созданные пользователем user1.

OPENFILES /Disconnect /O Read/Write - сбросить подключения, имеющие режим "Чтение\Запись"

OPENFILES /Disconnect /S SERVER /U user1 /P pass1 /ID * - выполнить сброс всех сессий ( /ID * ) на удаленном компьютере с именем SERVER. При подключении к удаленному компьютеру используется имя пользователя user1 и пароль pass1.







Весь список команд CMD Windows