Retourner une valeur depuis une fonction
Bonjour bonjour,
Alors j'ai bien lu certaines discussions sur ce forum qui expliquent que pour récupérer avec un script une valeur, il y a comme possibilité :
- return : code relatif au statut de la fonction
- envoyer le résultat voulu sur la console genre print ou echo
- envoyer le résultat dans un fichier texte et utiliser le dit fichier
Donc j'ai fait un script, qui défini une fonction, qui est appelée par un autre script, lequel autre doit récupérer un chemin...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
1 #!/usr/bin/zsh
2 # Vérifier que la partition est montée
3 function verifpart(){
4 local cible=$1
5 local option_extra=$2
6 findmnt -n --raw --evaluate --output=target LABEL=$1 &>/tmp/chemin
7 if [[ $? = 1 ]]; then
8 # Pas montée -> montage de la partition
9 # Déjà définie dans fstab, donc pmount sans le label à la fin
10 print "\nMontage de $1\n"
11 pmount -w -u 077 $option_extra <$(/tmp/chemin)
12 if [ $? -ne 0 ]; then
13 return 1
14 fi;
15 else
16 return 0
17 fi;
18 } |
Donc cette fonction sert à monter une partition si elle ne l'est pas, et renvoyer le chemin pour arriver aux fichiers de la partition.
La partie pmount me pose encore des soucis, mais c'est pas là que je veux en venir pour l'instant.
Le truc c'est que ne ligne de commande ça fonctionne, j'ai le chemin dans le fichier /tmp/chemin
Par contre ce script ne renvoie rien du tout.
Savez pourquoi ? Merci.