Команда OPENFILES используется для получения списка открытых файлов и папок в среде операционных систем Windows XP и старше. Возможно получение списка файлов, открытых удаленно с использованием сетевого доступа, или полного списка, включая файлы и папки, открытые локальными процессами. Кроме того, команда позволяет выполнить отключение сеансов удаленного открытия файлов или каталогов. Для работы с данной командой требуются права администратора ( «Запуск от имени администратора» в среде Windows 7 и старше).
1. Описание команды OPENFILES.
1.1. Формат командной строки:
C:\ OPENFILES /параметр [аргументы]
1.2. Список параметров:
- /Disconnect — Отключение одного и более открытых файлов.
- /Query — Отображение открытых файлов, локально и с сетевого ресурса.
- /Local — Включает/отключает отображение локально открытых файлов.
- /? — Вывод справки.
1.3. Для получения справки по использованию команды с конкретным параметром используется следующий формат командной строки:
1.3.1. Отобразить подсказку по использованию команды OPENFILES с параметром /Disconnect:
C:\ openfiles /Disconnect /? -
1.3.2. Выдать подсказку по использованию параметра /Query в постраничном режиме вывода на экран:
C:\ openfiles /Query /? | more
1.3.3. Выдать подсказку по использованию параметра /Local в текстовый файл D:\oflocal.txt
openfiles /Local /? > D:\oflocal.txt
2. Примеры получения списка открытых файлов.
2.1. Для управления режимом построения списка открытых файлов используется глобальный переключатель списка объектов (maintain objects list) текущее значение которого можно проверить командой :
C:\ openfiles /Local
2.2. Если флаг «построение списка объектов» включен, то команда OPENFILES отображает список файлов и папок, открытых как локально, так и по сети. Для отключения режима отображения списка файлов, открытых локальными процессами, используется команда:
C:\ openfiles /local off
Для вступления в силу нового режима построения списка открытых файлов, может потребоваться перезагрузка системы.
2.3. Список открытых файлов отображается с использованием команды:
C:\ openfiles /Query.
2.4. Формат командной строки:
C:\ openfiles /Query [/S система [/U пользователь [/P [пароль]]]] [/FO формат] [/NH] /V]
2.5. Список параметров:
- /S система — Подключаемый удаленный компьютер.
- /U [<домен>\]пользователь — Пользовательский контекст, в котором должна выполняться эта команда.
- /P [пароль] — Пароль для этого пользовательского контекста.
- /FO формат — Формат, в котором следует отобразить выходной файл. Допустимые форматы: «TABLE»,»LIST»,»CSV».
- /NH — Указывает, что строка заголовков столбцов не должна отображаться. Допустимо только для форматов «TABLE», «CSV».
- /V — Отображать расширенную информации в результатах.
- /? — Вывод справки по использованию.
2.6. Примеры:
2.6.1. Отобразить справку по использованию команды:
C:\ openfiles /Query /?
2.6.2. Отобразить список открытых файлов и папок с параметрами по умолчанию:
C:\ openfiles /Query
2.6.3. Отобразить список открытых файлов в формате CSV — полей, разделяемых запятой, без отображения заголовков столбцов ( /NH ):
C:\ openfiles /Query /FO CSV /NH
2.6.4. Отобразить список открытых файлов в виде таблицы (TABLE) с включением дополнительной информации (/V) об имени пользователя и идентификаторе процесса (PID)
C:\ openfiles /Query /FO TABLE /V
По умолчанию, используется список в формате таблицы, поэтому параметр /FO TABLE можно не указывать.
2.6.5. Отобразить список открытых файлов на удаленном компьютере, с использованием имени пользователя и пароля, задаваемых в командной строке:
C:\ openfiles /Query /S <система> /U <пользователь> /P <пароль>
2.6.6. Отобразить список открытых файлов на удаленном компьютере SERVER:
C:\openfiles /S SERVER /U mydonain\user1 /P mypass
Для выполнения команды на удаленном компьютере используется имя пользователя user1 в домене mydomain и пароль mypass. Если имя пользователя и пароль не заданы — используется учетная запись, в контексте которой выполняется команда OPENFILES.
2.6.7. То же, что и в предыдущем примере, но вместо имени удаленного компьютера, используется его IP-адрес:
C:\ openfiles /S 192.168.0.1 /U mydonain\user1 /P mypass
2.6.8. Записать результаты выполнения команды в текстовый файл C:\OpenedFiles.txt:
C:\ openfiles /Query > C:\OpenedFiles.txt
В отображаемой информации увидите следующее:
- ID — уникальный идентификатор открытого файла или папки.
- Имя процесса — имя процесса, открывшего файл или папку.
- Открыть файл (Путь\исполнимый файл) — очевидно, не самый удачный перевод на русский язык. В данной колонке отображается имя и путь открытого файла или папки.
При использовании параметра /V в таблицу добавляются колонки:
- Пользователь — имя пользователя, в контексте учетной записи которого открыт файл.
- PID — уникальный идентификатор процесса, который открыл файл. В системе может быть несколько процессов имеющих оно и то же имя исполняемого файла (svchost.exe, cmd.exe и т.п.) однако каждый из них имеет уникальный PID, по значению которого можно выделить конкретный процесс. Пример отображаемой таблицы, полученной при выполнении команды с параметром /V:
3. Принудительное отключение сеансов удаленного открытия файлов.
Для отключения файлов и папок, которые были удаленно открыты на общем ресурсе, используется параметр /Disconnect. Необходимо учитывать, что команда OPENFILES не предназначена для полного запрета сетевого доступа к файлам и папкам, а всего лишь выполняет сброс отдельной удаленной сессии.
3.1. Формат командной строки:
C:\ openfiles /Disconnect [/S система [/U пользователь [/P [пароль]]]] {[/ID идентификатор] /A пользователь] [/O режим]} [/OP открытый файл]
3.2. Параметры:
- /S система — Подключаемый удаленный компьютер.
- /U [домен\]пользователь — Пользовательский контекст, в котором должна выполняться эта команда.
- /P [пароль] — Пароль для этого пользовательского контекста.
- /ID идентификатор] — Отключение всех открытых файлов по идентификатору. Допускается использование подстановочного символа «*».
- /A пользователь — Отключение всех открытых файлов указанным в параметре пользователем. Допускается использование «*».
- /O режим — Отключение всех открытых файлов, с указанным в параметре режимом. Допустимые значения параметра: Read,Write или Read/Write. Допускается использование подстановочного знака»*».
- /OP открытый файл — Отключение всех файлов, открытых указанным в параметре файлом. Допускается использование подстановочного символа «*».
- /? — Вывод справки по использованию.
3.3. Примеры использования:
3.3.1. Сбросить подключение к файлу или папке с идентификатором 1:
C:\ openfiles /Disconnect /ID 1
3.3.2. Сбросить подключения, созданные пользователем user1:
C:\ openfiles /Disconnect /A user1
3.3.3. Сбросить подключения, имеющие режим «Чтение\Запись»:
C:\ openfiles /Disconnect /O Read/Write
3.3.4. Выполнить сброс всех сессий ( /ID * ) на удаленном компьютере с именем SERVER:
C:\ openfiles /Disconnect /S SERVER /U user1 /P pass1 /ID *
При подключении к удаленному компьютеру используется имя пользователя user1 и пароль pass1.