Identifier les fichiers ouverts un processus particulier sur Linux
J'ai besoin d'un script pour identifier les fichiers ouverts à un processus particulier sur linux
Pour identifier fd :
>cd /proc/<PID>/fd; ls |wc –l
Je m'attends à voir une liste de numéros de la liste des fichiers descripteurs numéro à l'aide dans le processus. Merci de me montrer comment faire pour voir tous les fichiers à l'aide dans ce processus.
Merci.
source d'informationauteur aladine | 2010-04-21
Vous devez vous connecter pour publier un commentaire.
La commande, vous voudrez probablement utiliser est
lsof
. C'est une meilleure idée que de creuser dans/proc
depuis la commande est plus clairement et d'une façon plus stable pour obtenir des informations du système.Toutefois, si vous êtes intéressé par
/proc
des trucs, vous remarquerez peut-être que les fichiers/proc/<pid>/fd/x
est un lien symbolique vers le fichier auquel il est associé. Vous pouvez lire le lien de la valeur avecreadlink
de commande. Par exemple, ce qui montre le terminal stdin est lié à:ou, pour obtenir tous les fichiers pour certains processus,
Alors que lsof est sympa, tu peux faire:
si vous n'avez pas lsof, vous pouvez faire à peu près la même en utilisant simplement
/proc
par exemple
Vous avez besoin lsof. Pour obtenir le PID de l'application qui a ouvert foo.txt:
ou ce Macmede dit de faire le contraire (liste les fichiers ouverts par un processus).