Одна из полезных функций - узнать какие файлы открыты в контексте процесса или узнать какой процесс занимает файл.
Узнаём какие файлы использует процесс
import psutil
def list_file_handlers(process_name):
for proc in psutil.process_iter():
if proc.name().lower().startswith(process_name):
for file in proc.open_files():
print(file)
list_file_handlers('python')
Функция вернёт имя процесса который занял файл. Если файл не занят то вернёт
None.def who_is_use(fpath):
for proc in psutil.process_iter():
for item in proc.open_files():
if fpath == item.path:
return proc.name()
Для использования требуются админские права.
#libs