Bonsoir à tous,
Voila mon petit problème:
J'ai depuis 3 ans sur un portable appartenant a mon travail, une Fedora 16 qui aujourdh'ui fonctionne encore trés (trop) bien. Malheureusement, mon travail me donne un nouveau portable plus récent et les mises jours ne se faisant plus pour la 16, je décide donc de mettre une 19.
Je remet mes icônes sur le Bureau ( oui je sais il y a mieux, mais j'aime bien) et là, patatraque, tout mes petits scripts qui me rendez un fier service pour mon travail ne se lancent plus dans le mode graphique.
Si je ne les lance pas en ouvrant un terminal, nada.
De plus, quand j essaie de lancer mes applicatifs, il l'ouvre avec un éditeur de texte, mais pas possible de l'ouvrir en l'associant au terminal.

Comment proceder pour que d'ici lundi prochain, mon portable soit opérationnel, sans que je sois obligé d'ouvrir le terminal et lancer à la main mes scripts ?

D'avance merci.

Z
Je ne sais comment tu les as copiés sur ton bureau.
Je suppose que tu as un dossier (sauvegarde) de tes scripts dans ton /home.
Deja peux tu tester dans lancer un depuis nautilus.
Si celui-ci se lance sans problème, tente un clique droit sur celui-ci, Déplacer Vers ... et choisit bureau et tente maintenant de le lancer pour voir.
Merci d'essayer de m'aider.
J'ai essayé via nautilus mais j'ai le même problème, il ouvre le fichier en voyant les scripts.,
Je me demandais si la solution ne serai pas de faire un clic droit dessus, puis, ouvrir avec et choisir une application.
mais malheuresement, on ne me propose pas gnome-terminal, sans quoi, je pense que mon problème serait résolu.
J'a fouiné une bonne partie de la soiré sur l endroit ou je pourrais rajouter ce programme manquant. mais j'avoue que la tâche est rude.
est ce dans /usr ? si quelquun a la solution, je suis preneur.
Bonne soirée.

Z
bonjour.

Pour des raisons de sécurité, les scripts ne s'executent pas si on en donne pas les droits une fois copié sur le disque.
Essaye de les executer à nouveau en faisant un
chmod +x nomDuScript
avant
Mongos wrote:bonjour.

Pour des raisons de sécurité, les scripts ne s'executent pas si on en donne pas les droits une fois copié sur le disque.
Essaye de les executer à nouveau en faisant un
chmod +x nomDuScript
avant
S'il peut les exécuter en console, c'est qu'ils sont déjà exécutables.

Le problème se situe au niveau de Nautilus : depuis F19 (ou peut-être même avant), Nautilus ouvre les script au lieu de demander quoi en faire. Il faut que tu modifies les paramètres de Nautilus pour qu'ils soient exécutés à chaque fois (ou qu'il te pose la question à chaque fois).
Pour accéder à ces préférences, ouvre une fenêtre Nautilus et clique sur le nom de la fenêtre dans la barre du haut, puis "Préférences". Dans "Comportement", tu pourras choisir quoi faire avec tes fichiers exécutables.
Bonjour à tous,
Oui ca y est, super, ça marche...
C'était bien les préférences dans nautilus.
J'ai un peu galérer pour trouver ou cliquer pour les préférences ( en haut un petit triangle à cotê de fichier dans la barre noire, pour ceux qui comme moi se poser la question).
Il suffit en effet de modifier la ligne comportement et de valider la premiére ligne....

Voila...
Bonne journée à tous et merci à tous ceux qui ont essayé et permi d'arriver à ce résultat.

Z
un an plus tard
chmod +x nomDuScript
ben j'ai pas compris ça marche pas pour lancer un script
anche wrote:chmod +x nomDuScript
ben j'ai pas compris ça marche pas pour lancer un script
lis le man bash.

ta commande est utile mais ne suffit pas. Il faut voir ce que contient ton script
C'est à cause de SELinux cette sécurité?
pour l'instant je mouline man bash et j'ai pas le niveau de compréhension

Quand j'ouvre le Terminal j'ai ca?
grep: erreur d'écriture
[anche@localhost ~]$ 
Il y a un truc de /bin/bash
Comment lancer un shell sans console à partir du Bureau
Tu peux nous montrer par acquit de conscience un modèle de script ?
J'ai vu qu'il fallait ajouter ./ pour que ça fonctionne

Si j'ajoute ./ nom_du_script celà fonctionne.

J'ajoute un répertoire au "PATH"
export PATH=$PATH:$HOME/bin
mais le script s'exécute seulement si j'ajoute ./ en console


Retour de echo $PATH
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/anche/.local/bin:/home/anche/bin
Pour que tu puisses lancer un script sans indiquer le chemin, ou sans aller dans le dossier où il se trouve et taper: ./le_script (mais juste: le_script), il faut mettre le chemin du script dans le PATH (effectivement) ou le mettre là où il devrait être.

Dans ton PATH, tu as: /home/anche/.local/bin:/home/anche/bin

Donc tu peux le mettre dans: /home/anche/bin , par exemple, le rendre exécutable, et mettre un lanceur sur le bureau.
Le bureau n'est vraiment pas un endroit conseillé pour y placer les scripts directement (mais bon...).

Si tu empêches l'exécution des exécutables de la partition /home, tu peux le mettre dans /usr/local/bin, ou autres.

EDIT:

Mais bon:
grep: erreur d'écriture
ton script semble comporter une erreur, donc je suis de l'avis de nouvo09, il nous faudrait un exemple de ton script afin que tu puisses obtenir une meilleure aide que des suppositions.

EDIT 2:

Créer un nouveau topic pour ton problème de script peut aussi aider, plutôt que squatter celui-là.
Bon je ne comprends pas trop le PATH.

Dans le Home, les scripts sont déposés dans un dossier nommé "Scripts".
En console j'ai tapé:
export PATH=$PATH:/home/anche/Scripts
puis ai fait le chmod +x nomDuScript

Comme le script s'ouvre toujours dans Gedit et qu'il ne se lance pas malgré le fait qu'il soit bien coché comme un exécutable, hé bien j'y comprends rien.

En fait pour le lancer il faut mettre " ./ " avant
./monscript.sh
Le script ne s'exécute que dans le terminal.

Comment faire pour qu'un script s'exécute sans devoir passer dans un terminal?
Comment faire pour qu'un script s'exécute sans devoir passer dans un terminal?
Tu peux créer un fichier .desktop (habitullement dans ~/.local/share/applications) et un lien symbolique dans ton home par exemple.
J'ai crée un répertoire bin dans mon Home
echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/anche/.local/bin:/home/anche/bin
Aucun des scripts qui se trouvent dans le répertoire bin ne sont exécutable et il faut taper ./nomscript.sh pour qu'il s'exécute.

Par contre si je les mets dans ~/.local/share/nautilus/scripts, alors c'est bon.
Valdes wrote: Le problème se situe au niveau de Nautilus : depuis F19 (ou peut-être même avant), Nautilus ouvre les script au lieu de demander quoi en faire. Il faut que tu modifies les paramètres de Nautilus pour qu'ils soient exécutés à chaque fois (ou qu'il te pose la question à chaque fois).
Pour accéder à ces préférences, ouvre une fenêtre Nautilus et clique sur le nom de la fenêtre dans la barre du haut, puis "Préférences". Dans "Comportement", tu pourras choisir quoi faire avec tes fichiers exécutables.
Bonjour Valdes,
J'étais obligé de lancer mes scripts en ouvrant un terminal et en lançant la commande "./scritp.sh" . J'ai modifié le comportement pour les fichiers exécutables en cochant "demander à chaque fois", ce qui me permet d'ouvrir les exécutables dans un terminal en y cliquant dessus, puis en choisissant "lancer dans un terminal".
C'est quand même plus pratique.
Merci à toi.
pll
Pour executer les scripts ou lien de scripts ça se passe dans ~/.local/share/nautilus/scripts.
Mais nulle part dans nautilus j'ai un menu préférences qui permettrait d'afficher une option en cochant "demander à chaque fois".

Pour le reste si je ne passe pas par nautilus/sctipts je suis obligé d'ouvrir un terminal et en lançant la commande "./nom_critp.sh".
pierrotlalune wrote:Bonjour Valdes,
[...]
Merci à toi.
pll
De rien. Content de voir que des vieux posts d'un an servent encore 😉