Pourquoi un script qui peut s'executer sous geany ne fonctionne t il pas en mode script ?

Post Reply
AlainX
Posts: 13
Joined: Thu Apr 25, 2024 11:15 am
Has thanked: 1 time
Been thanked: 1 time

Pourquoi un script qui peut s'executer sous geany ne fonctionne t il pas en mode script ?

Post by AlainX »

Pourquoi un script qui peut s'executer sous geany ne fonctionne t il pas en mode script ?

voici le contenu de mon fichier

#!/bin/bash
cd /mnt/home
# Demander à l'utilisateur de saisir le nom du répertoire
read -p "Entrez le nom du répertoire à créer : " nom_repertoire

# Vérifier si le répertoire existe déjà
if [ -d "$nom_repertoire" ]; then
echo "Le répertoire '$nom_repertoire' existe déjà."
else
# Créer le répertoire avec le nom saisi par l'utilisateur
mkdir "$nom_repertoire"
echo "Le répertoire '$nom_repertoire' a été créé avec succès."

# Créer le répertoire "lettres" à l'intérieur du répertoire principal
mkdir "$nom_repertoire/lettres"
echo "Le répertoire 'lettres' a été créé à l'intérieur de '$nom_repertoire'."
fi

# Copier le contenu du répertoire "lettres" (par exemple, des fichiers) dans le répertoire "lettres"
cp -r /root/my-documents/travail/lettres/* "$nom_repertoire/lettres/"
echo "Le contenu du répertoire 'lettres' a été copié avec succès."

cp -r /root/my-documents/travail/*.kml "$nom_repertoire/"

sous geany tout se passe bien quand on appuie sur le bouton execute
les droits d'execution ont été mis

quand je clique dessus en dehors de geany rien ne se passe ...
Le même script fonctionne sous ubuntu ...

Je ne comprends pas ...
Je suis sous triton 9.1 lancé à partir d'une clef usb générée par unetbootin et j'ai un fichier de sauvegarde avec 987 Mo de libres

Rantanplan
Posts: 116
Joined: Thu Jun 03, 2021 2:25 pm
Has thanked: 36 times
Been thanked: 24 times

Re: Pourquoi un script qui peut s'executer sous geany ne fonctionne t il pas en mode script ?

Post by Rantanplan »

Bonjour @AlainX

À la ligne 2 du script, je pense que

Code: Select all

cd /mnt/home

devrait être remplacé par

Code: Select all

cd /home

À la ligne 15, je complèterai la commande mkdir avec l'option -p pour que lettres soit bien créé sous le nom_repertoire demandé avec la commande read.

Ci-dessous, le résultat de ton script lancé depuis un terminal après les corrections proposées ci-dessus :

Code: Select all

# ./test.sh 
Entrez le nom du répertoire à créer : toto_second
Le répertoire 'toto_second' a été créé avec succès.
Le répertoire 'lettres' a été créé à l'intérieur de 'toto_second'.
cp: cannot stat '/root/my-documents/travail/lettres/*': No such file or directory
Le contenu du répertoire 'lettres' a été copié avec succès.
cp: cannot stat '/root/my-documents/travail/*.kml': No such file or directory
# 

Les erreurs sont normales, car je n'ai pas créé les dossiers travail et lettres.

Sinon, le fonctionnement est normal, me semble-t-il.

Pour répondre à ta question "qd je clique dessus rien ne se passe".
Le script est écrit pour être lancé depuis un terminal.
Si tu veux voir quelque chose, il faut utiliser soit yad, soit xdialog, soit dialog (tous présents dans Triton 9) pour ne pas à avoir à utiliser le terminal.

Pour une utilisation depuis un terminal :
tu connais la musique, depuis l'endroit où se trouve ton script tu ouvres un terminal et lances la commande :

Code: Select all

./[ton_script.sh]

puis pression sur la touche entrée.

Si je n'ai pas été clair, dis-moi.

Amitiés

AlainX
Posts: 13
Joined: Thu Apr 25, 2024 11:15 am
Has thanked: 1 time
Been thanked: 1 time

Re: Pourquoi un script qui peut s'executer sous geany ne fonctionne t il pas en mode script ?

Post by AlainX »

Un grand merci pour cette réponse
Avec Yad cela fonctionne !
Merci encore
Alain

Rantanplan
Posts: 116
Joined: Thu Jun 03, 2021 2:25 pm
Has thanked: 36 times
Been thanked: 24 times

Re: Pourquoi un script qui peut s'executer sous geany ne fonctionne t il pas en mode script ?

Post by Rantanplan »

Bonjour @AlainX

Vu qu'Yad donnait toute satisfaction.

Je suis tombé par hasard (mais sans me faire mal :D ) sur xmessage qui propose une option -entry

capture7155.png
capture7155.png (35.65 KiB) Viewed 34 times

Peut-être cela pourra-t-il te servir pour autre chose.
C'est rudimentaire comme outil, mais il fait le travail.

Il est dans plusieurs Toutou/Puppy, pas vérifié s'il était dans Triton-9.X.X

À voir si ça t'intéresse.

Amitiés.

Post Reply

Return to “Pour les francophones”