Verifique se um arquivo é aberto por outro processo

3

Existe uma maneira de verificar se um arquivo com nome dado é aberto por algum processo (diferente do nosso processo)?

Eu preciso disso no FreeBSD. Seria bom também suportar o Linux. Eu escrevo em Perl.

Técnicas que exigem acesso root não são adequadas.

    
por porton 20.12.2016 / 17:14

1 resposta

1

Você deve usar o comando fstat , você pode executá-lo como user :

The fstat utility identifies open files. A file is considered open by a process if it was explicitly opened, is the working directory, root directory, jail root directory, active executable text, or kernel trace file for that process. If no options are specified, fstat reports on all open files in the system.

    
por 20.12.2016 / 20:00