J'ai créé un script Shell (test.sh) sur le bureau de Lubuntu (15.04). Les autorisations sont les suivantes: Propriétaire unique (Afficher le contenu + Modifier le contenu + Exécuter).
Lorsque je double-clique sur test.sh, je choisis "Exécuter dans un terminal". Le terminal (LXTerminal) s'ouvre, mais le script n'est pas exécuté.
Lorsque je tape ./test.sh
, le script est exécuté. Mais ce n'est pas ce que je veux. Solution à ce problème?
On dirait que votre script manque d'une ligne Shebang. Assurez-vous que la toute première ligne du script se lit comme suit:
#!/usr/bin/env bash
ou
#!/bin/bash
Sur une note de côté, vous devriez éviter de mettre l'extension .sh
sur un script bash, car bash n'est pas sh. De préférence, n'utilisez aucune extension.
Cela ressemble à un bogue existant connu: lubuntu-default-settings ne spécifie pas la commande à exécuter dans le terminal
Ce rapport de bogue suggère la solution de contournement suivante (en utilisant X-terminal à la place.)
SOLUTION DE CONTOURNEMENT:
Dans les préférences de pcmanfm, sous l'onglet Avancé, modifiez le terminal en
"x-terminal-emulator -e %s"
. Vous pouvez également modifier la valeur "terminal" dans ~/.config/libfm/libfm.conf.
Une solution alternative que j'ai déjà utilisée consiste à créer un raccourci sur le bureau - mais vous ne pouvez alors que cliquer deux fois sur le bureau.
Pour créer un raccourci, vous pouvez exécuter la commande:
lxshortcut -o ~/Desktop/test.sh
(Où test.sh est le nom que vous voulez que le fichier ait sur le bureau.)
Cela ouvrira lxshortcut, ce qui créera un fichier .desktop à partir de vos réponses dans une interface graphique.
La création manuelle d'un fichier .desktop devrait également fonctionner .