9 votes

Comment accéder à `/Applications` à partir de la ligne de commande ?

Je suis nouveau dans Monterey, je viens (je pense) de la dernière version d'OS X avant qu'il ne devienne MacOS -- définitivement avant que ce truc SIP ne commence à rendre la vie intéressante.

J'avais l'habitude de pouvoir dire ces choses

$ ls /Applications
$ open /Applications/Messages.app

et obtenir les résultats évidents (qui fonctionnent). Maintenant, alors que je peux voir tous les /Applications dans le Finder, j'obtiens une liste tronquée (de ce que j'ai installé et de ce que j'ai fait). Safari.app / Xcode.app pour une raison quelconque) :

# ls /Applications
Firefox.app         MenuMeters.app  Utilities       calibre.app
Google Chrome.app   Safari.app      VLC.app         TeX
VictronConnect.app  MacPorts        Xcode.app

$ open /Applications/Messages.app
The file /Applications/Messages.app does not exist.
$ open -a Messages
<app opens just fine>

( XQuartz.app est visible dans Utilities mais rien d'autre).

J'ai mis Terminal.app pour avoir un accès complet au disque dans les Préférences Système. Je suis en train d'exécuter bash de MacPorts.

Existe-t-il un moyen de convaincre SIP ( ?) d'autoriser ls y open pour travailler dans ces répertoires spéciaux ?

Je ne dois pas être la première personne à souhaiter que ce comportement soit plus permissif, mais je n'ai pas réussi à le trouver sur Google.

Merci !

18voto

Gordon Davisson Points 30215

À partir de Catalina (10.15), MacOS utilise un format de volume divisé, avec le logiciel système sur un volume verrouillé et un volume "Data" séparé pour les données utilisateur, les logiciels installés par l'utilisateur, etc. La plupart des dossiers ne contiennent qu'un seul de ces éléments, ils résident donc sur un seul volume, mais le dossier Applications contient les deux, il est donc géré... étrangement.

Ce qui se passe réellement, c'est qu'il y a deux dossiers d'applications. Les applications système intégrées se trouvent dans /System/Applications (qui se trouve sur le volume système en lecture seule), et les applications installées par l'utilisateur (y compris Safari, parce que c'est bizarre) se trouvent dans /Applications (qui est en fait un lien ferme vers /System/Volumes/Data/Applications sur le volume Data).

Résultat net : à la ligne de commande, vous devez regarder dans deux endroits différents, /Applications et /System/Applications, pour voir toutes les applications installées sur votre Mac.

Le Finder montre leur contenu fusionné, mais ce n'est qu'une illusion commode -- la réalité est qu'il y a deux dossiers différents, et à la ligne de commande vous voyez cette réalité.

Voici deux bons articles à ce sujet sur le site de l'Eclectic Light Company : "Disposition du volume de démarrage de MacOS Catalina" y "Aménagement du volume de démarrage de Big Sur" .

4voto

David Anderson Points 30783

Je ne sais pas pourquoi vous voulez entrer la commande ci-dessous.

open /Applications/Messages.app

Je crois que la commande appropriée serait la suivante.

open -a Messages

Fondamentalement, le système d'exploitation est séparé en un volume en lecture seule et un volume en lecture-écriture. Ces volumes peuvent apparaître séparément ou être combinés. Lorsque vous utilisez le Finder, vous les voyez comme combinés. Depuis le Terminal, vous accédez uniquement au volume en lecture-écriture. Ainsi, alors que la commande ci-dessous fonctionnerait en accédant au volume en lecture seule, l'utilisation de la commande -a ne nécessite pas de savoir où réside l'application.

open /System/Applications/Messages.app

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X