Privilèges complets sur le fichier .command, mais il dit que je n'ai pas les privilèges appropriés

22

J'ai une commande que je dois régulièrement exécuter dans le terminal (pour la signature du code d'application). Normalement, je lance le terminal, appuyez sur la flèche vers le haut jusqu'à ce que j'atteigne la commande souhaitée, puis appuyez sur Entrée.

J'ai décidé qu'une solution plus durable pourrait être de créer un fichier sur lequel je peux simplement double-cliquer pour exécuter la commande Terminal. Dans mes recherches, j'ai découvert que je pouvais créer un fichier texte avec l' .commandextension qui contient la commande que je veux exécuter.

Cependant, lorsque je double-clique sur ce fichier, le terminal s'ouvre et j'obtiens l'erreur suivante:

Le fichier «Sign Code.command» n'a pas pu être exécuté car vous ne disposez pas des privilèges d'accès appropriés.

Pour afficher ou modifier les privilèges d'accès, sélectionnez le fichier dans le Finder et choisissez Fichier> Obtenir des informations.

Le problème est que lorsque je vais dans le volet Obtenir des informations comme indiqué et que je regarde mes autorisations, il indique que mon utilisateur a un accès en lecture-écriture (la seule autre option est en lecture). En d'autres termes, j'ai les autorisations les plus élevées, mais je ne peux toujours pas ouvrir ce fichier.

Que puis-je faire pour résoudre ce problème?

Thunderforge
la source

Réponses:

34

Vous devez définir «exécuter» sur le fichier pour lui permettre de l'exécuter:

chmod u+x /path/to/file.command

uest le propriétaire du fichier, +xajoute «exécuter», ce qui u+xdonne au propriétaire du fichier la possibilité de l'exécuter

… Vous pouvez ensuite l'exécuter à l'avenir en double-cliquant dessus.

grg
la source
1
Le message d'erreur est donc incorrect et je ne peux pas corriger les autorisations en accédant à la fenêtre Obtenir des informations comme il est dit? Je n'ai aucun problème avec l'utilisation du terminal pour le réparer, je suis juste surpris que le message me dise de faire quelque chose de mal.
Thunderforge
@Thunderforge En effet, c'est faux, pour autant que je sache :) Je suis presque sûr que Finder ne peut pas le faire - vous devez le faire en utilisant Terminal ou un autre script.
grg
+1 pour expliquer ce que cela u+xsignifie. Je m'étais toujours demandé.
Luc
1
@Thunderforge Oui, c'est tellement choquant qu'Apple ait un message d'erreur inutile ... Soyez reconnaissant qu'ils en aient un, et c'est essentiellement correct même. Leur m / o est normalement d'avoir quelque chose qui échoue sans explication pourquoi, ou que vous devriez vous attendre à ce que quelque chose se produise. C'est pourquoi les profanes disent que les appareils Apple n'ont jamais d'erreurs!
BuvinJ
Tu es un génie. Je me suis arraché les cheveux pour le passé pour toujours, oubliant complètement la upartie ... Merci!
Zizouz212