Un fichier est toujours utilisé lorsque vous essayez de vider la corbeille – comment puis-je l'enlever?

Lorsque vous essayez de vider la Corbeau dans OS X, et qu'un fichier est encore ouvert dans une application, vous recevez la boîte de dialogue:

Entrez la description de l'image ici

L'opération ne peut pas être complétée car l'élément "…" est utilisé.

Comment puis-je savoir quelle application ou quel processus utilise-t-il encore ce fichier?

En utilisant lsof pour trouver ce qui maintient le fichier ouvert

Ouvrez Terminal.app et utilisez la commande suivante pour accéder à votre Trash:

 cd ~/.Trash 

Maintenant, entrez la commande suivante:

 lsof name-of-file 

Par exemple, dans la capture d'écran ci-dessus, ce serait: lsof pdf\ 08-53-59.pdf (important d'échapper aux espaces ici). Vous pouvez également entrer lsof avec un espace après, puis glisser le fichier de Trash du Finder dans la fenêtre du terminal.

Entrez la description de l'image ici

La commande affichera quelque chose comme suit:

 charon:.Trash werner$ lsof pdf\ 08-53-39.pdf COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME Finder 5022 werner txt REG 14,2 636141715 32494023 pdf 08-53-39.pdf 

Dans ce cas, nous savons que Finder maintient le fichier ouvert. Pour toute autre application, il serait facile de l'activer et de le quitter. Dans le cas du Finder, il n'y a pas de bouton "quit" évident.

Pour tuer le Finder et lancer le document, entrez ce qui suit dans le terminal:

 killall Finder 

Vous devriez maintenant pouvoir vider votre Trash.

Autres astuces

Si ce qui précède ne réussit pas, voici quelques astuces très basiques, vous pouvez essayer de vider votre poubelle:

  • Déconnectez-vous de votre utilisateur et connectez-vous à nouveau
  • Redémarrez Mac, connectez-vous à nouveau

lsof n'a rien renvoyé pour moi même avec sudo. Mais le simple rm fait l'affaire.

 cd ~/.Trash 

Dans mon cas, il s'agissait d'une application:

 rm -rf some.app