Comment puis-je créer mon fichier pour pouvoir double-cliquer dessus et le lancer. C'est un script .sh
, mais j'ai aussi des fichiers qui disent:
executable (application/x-executable)
dans la description de ce qu'ils sont.
Je ne peux en lancer aucun depuis le terminal ou en double-cliquant.
Si possible, j'aimerais un moyen d'utiliser l'interface graphique ou un terminal, mais pas une combinaison des deux.
Voici une capture d'écran de ce que je vois lorsque je clique avec le bouton droit de la souris, puis sur Propriétés. Le fichier d'abord:
Et le script Shell ici:
NB: j’accepte le fait que c’est un doublon (je le cherchais, mais je n’ai pas pu le trouver. J'ai donc demandé à + y répondre, en espérant que je le retrouverais). Cependant, je ne pense pas que la question des fichiers .desktop est un doublon.
Il existe deux manières de rendre un fichier exécutable:
Méthode graphique:
Allez sur l'onglet autorisations, puis cochez la case Execute: [✓]
Autoriser l'exécution du fichier en tant que programme.
Méthode en ligne de commande:
Il suffit de courir:
chmod +x /path/to/your/file.txt
Notez que chmod
possède également des options plus avancées. Il accepte trois groupes d'options, représentés par --- --- ---
. Le premier ensemble de ---
est User. Le second est groupe et le dernier est autre (tout le monde).
r
signifie Read, w
pour Write et x
pour eXecute.
Autoriser tout le monde à le lire, mais seul le groupe à exécuter et l'utilisateur à le lire et l'écrire serait -rw- rx- r--
. Ceci serait ajouté à la commande en tant que:
chmod +rw-rx-r-- /path/to/file.extension
chmod
peut également le faire en chiffres. Il est basé sur le binaire.
Donc, il y a ces chiffres:
Exécuter par l'utilisateur est 100
. Exécuter par groupe est 010
. Exécuter par un autre est 001
Ecrivez par l'utilisateur est 200
. Écrire par groupe est 020
. Ecrivez par un autre est 002
.
Lu par l'utilisateur est 400
. Lire par groupe est 040
. Lu par les autres est 004
.
Ensuite, vous ajoutez ces éléments pour obtenir la combinaison souhaitée.
Donc, permettre à tout le monde de le lire, mais seul le groupe à exécuter et l'utilisateur à l'écrire serait 400 + 040 + 004
et 010
et 200
Cela ajoute à 600 + 050 + 004 = 654
.
Vous pouvez ensuite exécuter la commande.
chmod +654 /path/to/file.extension
pour le définir. Donc, pour définir toutes les autorisations que vous pouvez exécuter:
chmod +rwxrwxrwx /path/to/file.extension
ou
chmod +777 /path/to/file.extension
Enfin, vous pouvez faire:
chmod -777 /path/to/file.extension
Supprimer toutes les autorisations de tout le monde.
Et:
chmod +300 /path/to/file.extension
Pour ajouter en lecture et en écriture à l'utilisateur, sans affecter les autres autorisations (par exemple, les autorisations d'exécution).
This website a un petit outil très utile, grâce auquel vous pouvez cocher les options que vous voulez et vous donner la commande:
Cependant, toutes les combinaisons possibles ne sont pas judicieuses; les principaux utilisés sont les suivants:
755 - Owner
a tout, et Group
et Other
peuvent lire et exécuter
700 - Owner
a tout
644 - Owner
peut lire et écrire, et Group
et Other
peut lire
600 - Owner
sait lire et écrire
Et si vous utilisez des groupes d'utilisateurs non triviaux:
775 - Owner
peut lire et écrire, et Group
et Other
peuvent lire
770 - Owner
et Group
ont tous, et Other
peut lire et exécuter
750 - Owner
a tout, et Group
peut lire et exécuter
664 - Owner
et Group
peuvent lire et écrire, et Other
peut simplement lire
660 - Owner
et Group
peuvent lire et écrire
640 - Owner
peut lire et écrire, et Group
peut lire
777 et 666 sont rarement utilisés, sauf dans /tmp
.
Merci Ilmari Karonen pour soulignant ceux d'usage courant!