J'ai remarqué que parfois Mail.app verrouille les fichiers. Le verrou lui-même permet de déplacer des fichiers vers la corbeille, mais ne permet pas de vider la corbeille. (Peut-être que la corbeille devrait être renommée Thrash dans ce cas)
Existe-t-il un moyen (via une commande de terminal ou une application) de voir quelle application verrouille le fichier et / ou déverrouille le fichier sans quitter l'application?
Réponses:
Comme le dit Rabarberski,
lsof
peut être utilisé pour rechercher tout processus ayant le fichier ouvert. Notez que vous devez exécuter le programme en tant que root, c'est-à-dire en utilisantsudo
, et que vous pouvez donner le chemin d'accès au fichier qui vous intéresse en tant qu'argument, il n'est donc pas nécessaire de l'grep
invoquer dans l'indication vers laquelle Rabarberski pointe. De plus, si un processus détient un verrou sur le fichier, vous êtes censé pouvoir le voir à partir de la colonne FD dans lalsof
sortie. Voir la page de manuel pour les détails. (Lorsque je tournesudo lsof
sur ma machine, je ne vois aucun fichier verrouillé, donc je ne garantis pas que cela fonctionne bien sur le Mac.sudo
Est après tout un programme générique Unix, et il est possible que certaines fonctionnalités ne fonctionnent pas sur OSX.)Vous ne pouvez pas déverrouiller un fichier sans tuer le processus qui détient le verrou. Mais vous pouvez le supprimer avec
rm
de la ligne de commande.la source
sudo
est après tout ...», c'étaitlsof
que j'avais l'intention de mentionner. Je ne vais pas le modifier - c'est trop mineur pour justifier une bosse sur la première page.Comme d'autres l'ont souligné, lsof fait l'affaire. Pour rendre la tâche encore plus simple, je suggère l'application (gratuite) "Qu'est-ce qui me retient" (URL: http://www.hamsoftengineering.com/products/wkm/wkm.html ) qui est essentiellement une interface pour lsof et possède un peu d'options pour gagner du temps.
la source
Apparemment, la
lsof
commande de terminal ("liste des fichiers ouverts") peut être utilisée pour cela: http://hints.macworld.com/article.php?story=20040121001144687la source