Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 26/04/2017, à 14:03

Caerroff

[RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

Bonjour ^^

ça fait une semaine que je suis sous ubuntu 16.04 LTS et tout va pour le mieux ^^

Sauf que j'aimerais savoir comment faire pour ouvrir .sh sans faire les commandes

cd /path && chmod +x truc.sh && ./truc.sh

et j'aimerais surtout savoir si c'est possible

On pourrait croire que ca n'a rien a faire dans la rubrique jeux mais c'est pour ouvrir TeamSpeak et Dofus

Merci de vos réponses ^^,             
                                                                              Caerroff big_smile

Dernière modification par Caerroff (Le 26/04/2017, à 20:09)

Hors ligne

#2 Le 26/04/2017, à 14:10

jplemoine

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

Caerroff a écrit :

Sauf que j'aimerais savoir comment faire pour ouvrir .sh sans faire les commandes
"cd /path
chmod +x truc.sh
./truc.sh"
et j'aimerais surtout savoir si c'est possible

Oui, c'est possible. Il faut juste comprendre ce que l'on fait au lieu de bêtement appliquer un tuto...


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

En ligne

#3 Le 26/04/2017, à 14:11

kholo

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

salut,
je chmod ne doit être fait qu'une seule fois
et tu dois pouvoir lancer un bash (ou sh) avec le gestionnaire de fichier en double cliquant dessus...
par défaut ça doit lancer l'éditeur de texte mais ça se change dans les préférences du gestionnaire
pour nautilus :

gsettings set org.gnome.nautilus.preferences executable-text-activation ask

NB peux tu mettre le code de tes articles entre balise code (<> dans les boutons en haut)

Hors ligne

#4 Le 26/04/2017, à 20:03

Caerroff

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

jplemoine a écrit :
Caerroff a écrit :

Sauf que j'aimerais savoir comment faire pour ouvrir .sh sans faire les commandes
"cd /path
chmod +x truc.sh
./truc.sh"
et j'aimerais surtout savoir si c'est possible

Oui, c'est possible. Il faut juste comprendre ce que l'on fait au lieu de bêtement appliquer un tuto...

Effectivement depuis la derniere fois le "chmod +x ..." n'est plus nécessaire mais un moment ou mon script était sur un disque dur externe , mon script n'était plus exécutable a chaque fois ou je le fermais, donc désolé de ne pas être né génie ^^

Dernière modification par Caerroff (Le 26/04/2017, à 20:04)

Hors ligne

#5 Le 26/04/2017, à 20:05

Caerroff

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

kholo a écrit :

salut,
je chmod ne doit être fait qu'une seule fois
et tu dois pouvoir lancer un bash (ou sh) avec le gestionnaire de fichier en double cliquant dessus...
par défaut ça doit lancer l'éditeur de texte mais ça se change dans les préférences du gestionnaire
pour nautilus :

gsettings set org.gnome.nautilus.preferences executable-text-activation ask

NB peux tu mettre le code de tes articles entre balise code (<> dans les boutons en haut)

Merci beaucoup ^^ ça marche nikel

Hors ligne

#6 Le 03/03/2018, à 20:34

Lucas Dumortier

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

Bonjour moi personnellement je vais dans mon dossier personnel ----> dossier Teamspeak Client 3 -----> tu descends tout en bas tu ouvres le terminal (CTRL+Alt+t) et tu fais glisser le .SH dans le terminal puis tu fais entrée big_smile bonne journée

Hors ligne

#7 Le 20/03/2018, à 15:51

Brice Jeunieaux

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

Bonjour / bonsoir,

même si ton sujet semble résolu, j'ai un bon moyen en CLI alternatif à l'interface dite graphique :

dans ton fichier .bash_aliases, fichier caché situé dans ton répertoire /home/user/, entres ceci :

alias truc="./leCheminDuRépertoireContenantTonScript/truc.sh"

Le fichier .bash_aliases contient des commandes "raccourcis" d'autres commandes, ce qui est parfait pour se faciliter la tâche ! wink


Concrètement, qu'est-ce que ça va faire ?
-> Quand tu vas entrer la commande 'truc' dans un terminal, cela va exécuter directement ton script dans son répertoire.
-> C'est pratique et ça permets de ne pas avoir à constamment retaper de grandes lignes de code à chaque fois.
-> Attention cependant à s'assurer que ton script est bien exécutable ! (sinon 'chmod +x')
-> Cette solution efficace en CLI est une bonne alternative à la solution proposée par interface dite graphique.

Hors ligne

#8 Le 21/03/2018, à 12:58

kholo

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

Brice Jeunieaux a écrit :

Bonjour / bonsoir,

même si ton sujet semble résolu, j'ai un bon moyen en CLI alternatif à l'interface dite graphique :

dans ton fichier .bash_aliases, fichier caché situé dans ton répertoire /home/user/, entres ceci :

alias truc="./leCheminDuRépertoireContenantTonScript/truc.sh"

Le fichier .bash_aliases contient des commandes "raccourcis" d'autres commandes, ce qui est parfait pour se faciliter la tâche ! wink
...

non, l'utilisation des alias n'est à utiliser que pour les arguments...
(de préférence... c'est pas non plus gravé dans le marbre !!!)
pour les scripts spécifiques, il est préférable d'utiliser un dossier bin dans son dossier perso voire le dossier /bin (en réglant bien les droits d’exécutions et en supprimant les droits d'écriture autre que pour le proprio).
NB : une routine est ajoutée par défaut dans .profile pour ajouter le bin perso au PATH :

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

cette routine ajoute, si celui est présent, le dossier bin perso au $PATH
donc il suffit de créer ce dossier, créer un script et lui donner les droits d’exécution
puis le lancer simplement avec son nom (pas besoin de ./ ou bash au début)
NB : il faut se déconnecter et se reconnecter après avoir créer ce dossier bin pour qu'il soit pris en compte la première fois... les fois suivantes c'est automatique à la connexion.

Hors ligne

#9 Le 24/03/2018, à 16:26

Brice Jeunieaux

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

kholo a écrit :

non, l'utilisation des alias n'est à utiliser que pour les arguments...
(de préférence... c'est pas non plus gravé dans le marbre !!!)
pour les scripts spécifiques, il est préférable d'utiliser un dossier bin dans son dossier perso voire le dossier /bin (en réglant bien les droits d’exécutions et en supprimant les droits d'écriture autre que pour le proprio).

...

Je ne comprends pas le but de la démarche, et ça semble assez fastidieux, quel est l'intérêt ?
En quoi créer des alias de commandes ne peut pas être approprié selon la situation ?

Hors ligne

#10 Le 24/03/2018, à 18:22

Watael

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

l'utilisation des alias n'est à utiliser que pour les arguments

je ne comprends pas cette phrase.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#11 Le 25/03/2018, à 11:59

kholo

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

je répondais à ça :

alias truc="./leCheminDuRépertoireContenantTonScript/truc.sh"

je voulais dire :
on a plein d'applications qui suffisent à régler la plupart des situations...
le problème est de simplifier l'accès à certains résultats
en fonction des arguments ce qui est plus pointu mais compliqué à retenir
c'est là qu'interviennent les alias
par exemple si j'utilise souvent date pour accéder à l'heure

date +%R

il peut être intéressant de me créer un alias
pour ne pas avoir à retaper à chaque fois cette ligne mais, par exemple :

alias heure=date +%R

et donc, pour demander l'heure

heure

...
mais pour simplifier l'accès à des scripts, les alias sont trop lourds
quand la création d'un dossier ~/bin suffit pour l'usage personnel
et de /bin pour tous les utilisateurs...

je suis plus clair ?
ou me trompe-je ?

Hors ligne

#12 Le 25/03/2018, à 12:45

Watael

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

je ne fais pas de distinction.
l'intérêt d'un alias est de simplifier/raccourcir la frappe d'une commande, ou d'une suite de commande, parce qu'elle est longue, complexe, difficile à mémoriser...


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#13 Le 25/03/2018, à 13:06

MicP

Re : [RÉSOLU] Comment ouvrir un .sh avec autre chose que le shell?!

Bonjour

À propos du répertoire ~/bin dans le PATH par le fichier ~/.profile :

Dans l'en-tête du fichier ~/.profile on peut lire :

michel@debg53sw:~$ head ~/.profile 
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

michel@debg53sw:~$ 

Mais, quand on utilise une interface graphique avec son Environnement de Bureau,
comme dans ce cas là l'émulateur de terminal de l'interface graphique n'utilise pas de "login shell",
mon fichier ~/.profile n'est pas pris en compte,
ce qui fait que mon répertoire ~/bin ne sera pas dans le PATH

Dans ce cas, comme j'utilise l'interpréteur de commandes /bin/bash
afin que mon répertoire ~/bin soit quand même dans le PATH
j'ai ajouté ces quelques lignes dans mon fichier ~/.bashrc

# if not yet set, set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    [[ "$PATH" =~ "$HOME/bin" ]] || export PATH="$HOME/bin:$PATH"
fi

=======
À propos de chmod +x monscript.sh :

Attention : car avec cette ligne de commande,
monscript.sh deviendra aussi exécutable par tous (Other de UGO)
ce qui n'est pas toujours indispensable.

En général, je préfère ne rendre mes scripts exécutables
que pour mon compte utilisateur,
avec :

chmod u+x monscript.sh

Dernière modification par MicP (Le 25/03/2018, à 13:16)

Hors ligne