J'ai un script shell qui exécute une application graphique sur Ubuntu 12.04.
La façon dont je suis en train d’exécuter l’application est que j’ouvre le terminal et que je vais dans le répertoire qui contient ce fichier, puis fais Sudo ./shellScriptFileName
qui fonctionne très bien, mais j’ai deux problèmes, c’est que cela prend tellement temps donc je voudrais ajouter un raccourci dans le lanceur, ensuite, le terminal doit rester ouvert, ce qui est pénible (j'espère que ce ne sera pas un problème une fois que je pourrai courir depuis le lanceur.
Précision: j'aimerais que le terminal soit fermé lorsque mon application commence à s'exécuter.
Il semble que ce problème ne soit pas encore résolu. Avez-vous visité le lien "Comment faire" que j'ai fourni dans le commentaire ci-dessus? Cliquez sur moi
Si vous vérifiez que vous devez résoudre ce problème de plusieurs manières, cool et sympa. Pour être simple, je voudrais recommander une méthode "fictive" pour que cela fonctionne pour vous.
Sudo apt-get install gnome-panel
Lorsque l'installation est terminée, tapez gnome-desktop-item-edit --create-new ~/Desktop
, cette commande affichera une boîte de dialogue contextuelle "Créer un lanceur", illustrée ci-dessous.
personnaliser vos paramètres (nom, commande, icône, etc.)
Ça y est, profitez de votre nouveau raccourci cuit :-), espérons que cela vous aidera.
Voici les étapes:
Puisque vous voulez exécuter le script et que avoir le terminal rester en mode interactif, nous devons utiliser un script appelant spécial, qui nécessite à son tour expect
. Nous supposerons que le script que vous souhaitez exécuter s'appelle test.sh
expect
avec Sudo apt-get -y install expect
Créez le script appelant avec ce format:
#!/usr/bin/expect -f spawn -noecho bash # créer un shell attendre "$" # attendre l'attente envoyer "cd/path to script\n" # votre répertoire de script envoyer "./test.sh\n" # votre nom de script interact # passer en mode interactif
Faites le script appelant, dites call_test.sh
, exécutable avec
Sudo chmod +x /path/to/call_test.sh
Alt+F2
et saisissez gksudo gedit /usr/share/applications/TestSH.desktop
, où TestSH correspond à tout ce que vous souhaitez appeler l’icône de votre programme de lancement.Le fichier est de la forme suivante:
[Entrée du bureau] Version = 1.0 # votre version de script Type = Application Terminal = true # vous voulez un terminal, donc ... StartupNotify = true Icon = # peut être un élément intégré (/usr/share/icons) # Ou un fichier personnalisé, SVG ou PNG Name = TestSH # Quel que soit votre choix, appelez-le Commentaire = # description Exec =/chemin/vers/test- appel.sh # Chemin vers le script de l'appelant Catégories = Application;
Enfin, assurez-vous que le script actuel est exécutable, avec Sudo chmod +x /path/to/test.sh
Faire en sorte que le terminal reste ouvert après n’est pas un processus très facile, mais voici ce que je suggère:
Créez un nouveau script avec le contenu suivant: gksudo /path/to/Shell/script
et enregistrez-le sur votre bureau. Ajoutez le terminal au lanceur. Pour ouvrir le programme, ouvrez le terminal à partir du programme de lancement et cliquez le script du bureau sur le terminal.
Ou, si vous n'avez pas nécessairement besoin d'ouvrir le terminal une fois le programme terminé, créez un script comme ci-dessus, enregistrez-le dans n'importe quel répertoire et suivez ce guide pour en faire un icône de lanceur: http: // ubuntuforums.org/showthread.php?t=1700605
J'aimerais que le processus soit un peu plus fluide, mais bon, c'est pourquoi j'utilise Kubuntu ...