Comment créer un lanceur d'applications pour un fichier .sh?

20

J'ai ce fichier run.sh et j'ai créé un lien symbolique dans mon bureau.

Lorsque je double-clique dessus le fichier, la boîte de dialogue suivante apparaît

Et je dois cliquer sur "exécuter" à chaque fois. Comment puis-je créer un lien qui s'exécute par défaut?

OscarRyz
la source

Réponses:

19

Au lieu de vous lier directement au fichier .sh, créez un lanceur d'application comme suit:

  • Faites un clic droit sur votre bureau
  • Choisissez "Créer un lanceur ..."
  • Remplacez «Application» par «Application dans le terminal» dans la liste déroulante.
  • Donnez-lui un nom comme "Idée"
  • Entrez la commande comme celle-ci /path/to/script/idea.sh
  • Ajoutez un commentaire si vous le souhaitez, il apparaîtra lorsque vous passez la souris dessus si vous déplacez le lanceur dans une barre de menus.

Ensuite, lorsque vous cliquez sur le lanceur, une fenêtre de terminal s'ouvre et la commande s'exécute à l'intérieur.

Si vous ne voulez pas ouvrir un terminal pour voir une sortie, utilisez simplement "Application" au lieu de "Application dans le terminal".

Vous devrez peut-être modifier le fichier du bureau avec quelque chose comme gedit pour ajouter le «chemin» du script. Comme ça:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher
Richard Holloway
la source
J'aimerais pouvoir ajouter une image non svg à l'icône créée. Le reste a parfaitement fonctionné Merci.
OscarRyz
Mhh .. étrange, une fois créé, je pourrais associer l'icône png Maintenant ça ressemble à ça: yfrog.com/5gscreenshot20100817at719p Nice!
OscarRyz
Cela marche. Cependant, lorsque je supprime l'icône de mon bureau, elle disparaît également du lanceur. Comment puis-je le faire rester dans le lanceur lorsque je m'en débarrasse du bureau?
amorfis
9

Pourquoi ne pas simplement configurer Nautilus pour qu'il s'exécute par défaut?

Sous Nautilus, allez dans Edition-> Préférences-> Comportement et cliquez sur:

"Exécutez les fichiers texte exécutables lorsqu'ils sont ouverts"

Plie d'Evan
la source
probablement pas quelque chose que la plupart des gens veulent suggérer par défaut, mais néanmoins très informatif, il peut être utile de savoir que c'est possible.
ithkuil
2

La solution de Richard ne fonctionne pas pour Unity Desktop que les versions récentes d'Ubuntu utilisent par défaut. Pour créer facilement des raccourcis dans l'unité, vous pouvez utiliser l'application "Menu principal", alacarte, qui vous permet d'éditer des programmes. Cliquez simplement sur la catégorie appropriée, puis sur "Créer un élément".

Kristofer
la source
1

Je voulais faciliter le lancement de "Dont Starve" pour mes enfants. J'ai commencé le programme avec /usr/games/dontstarve/bin/dontstarve.shdans un terminal, mais je le voulais dans le menu des applications.

J'ai ajouté un élément de menu avec Alacarte mais cela ne fonctionnerait pas car c'était un fichier .sh.

Après de nombreuses recherches, j'ai pensé que je devais spécifier le chemin du script.

Ajouter un chemin comme expliqué dans Variables du bureau

Je trouve le lanceur alacarte-made-51cc077a-58af-11e3-a764-00252267190b.desktopdans ~/.local/share/applications/Modifiés en ajoutant la ligne de chemin.

Maintenant, le fichier du lanceur ressemble à ceci:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher

Fonctionne comme un champion. J'espère que ça aidera quelqu'un d'autre. (Je lance en fait Mint 15 Olivia basé sur Ubuntu Raring)

firemankurt
la source