Créer un fichier .desktop qui s’ouvre et exécuter une commande dans un terminal

J’aimerais savoir comment écrire la commande Exec d’un fichier .desktop pour ouvrir un nouveau terminal et y exécuter un script shell. Le script shell fonctionne et est accessible à tous les utilisateurs. Lorsque vous lancez le script à partir du terminal, tout fonctionne, mais cela ne fonctionne pas lorsque vous essayez de lancer le script à partir d’un fichier .desktop.

Voici quelques combinaisons que j’ai déjà essayées:

 Exec=gnome-terminal -x sh -c 'echo hello' Exec=sh -c 'gnome-terminal echo hello' Exec=sh -c 'echo hello' Exec=echo hello 

L’option de terminal .desktop est définie sur true.

Le contenu de votre fichier desktop devrait ressembler à (voir comment créer un fichier .desktop à l’aide d’un éditeur de texte ):

 [Desktop Entry] Version=1.0 Name=Test Comment=Test the terminal running a command inside it Exec=gnome-terminal -e "bash -c 'echo hello;$SHELL'" Icon=utilities-terminal Terminal=false Type=Application Categories=Application; 

Ou:

 [Desktop Entry] Version=1.0 Name=Test Comment=Test the terminal running a command inside it Exec=bash -c 'echo hello;$SHELL' Icon=utilities-terminal Terminal=true Type=Application Categories=Application; 

Dans le premier cas, le champ Terminal est défini sur false (peut-être contrairement à vos attentes) et dans le second, sur true , mais le résultat est identique dans les deux cas.

 !#/bin/bash gnome-terminal -e YOUR_COMMANDS 

Créez le fichier ci-dessus. N’oubliez pas de sudo chmod +x filename.sh

Je fais ça. La première ligne du fichier texte est! # / Bin / bash

Les lignes suivantes du fichier texte sont les commandes (le script shell).

Enregistrez le fichier sous quelque chose.sh

Ouvrez les propriétés du fichier et activez le fichier d’exécution en tant que programme.

Maintenant, lorsque le fichier est double-cliqué, je reçois l’option de l’exécuter.