@kamaris
Merci beaucoup de ta patience pour toutes ces explications ! 🙂
kamaris a écritIl faut passer à lsblk un nom de périphérique valide.
Pour voir tes noms de périphériques, regarde le retour de lsblk dans le terminal (première colonne).
C'est tout bon maintenant en précisant /dev/sdb dans mon petit script :
model=$(lsblk -no model /dev/sdb)
echo $model
notify-send "summary" -t 10000 "$model"
- l'echo me retourne bien Cruzer Blade (c'est le modèle de ma clef usb) :
jlfh0816 @ Voyager1804 ~/.scripts
└─ $ ▶ ./essai.sh
Cruzer Blade
- et le message de notification m'affiche bien également Cruzer Blade :
kamaris a écritTon corps de message contient littéralement $model au lieu de sa valeur, car tu as utilisé des guillemets simples au lieu des doubles
Oui, tu as tout à fait raison, j'aurai dû mieux vérifier ma syntaxe.
En fait, cette histoire de guillemets pour le corps du message n'est pas claire car j'ai remarqué (à plusieurs reprises) que, lorsqu'il n'y a pas variable, il lui arrive de ne s'afficher que s'il est entouré de guillemets simples. Par contre, effectivement, lorsque ce corps de message doit afficher la valeur d'une variable, il nécessite des guillemets doubles.
Difficile à comprendre ...
kamaris a écritDans mon script, le
$2 (second argument) de la fonction
power_off() correspond à
$last_device dans le corps le script, car j'appelle la fonction par
power_off "$1" "$last_device"
où
$1 est le premier argument du script (l'option éventuelle
-v), également passé en premier argument à
power_off().
Alors là, pour le béotien que je suis, j'avoue ne pas avoir tout compris car si j'ai bien repéré
$1 dans ton script ... il apparaît après l'utilisation de
$2 (c'est normal ?).
Bon, j'ai largement de quoi potasser les manuels de bash script !!! 😛
Encore merci de ta patience
kamaris ... et à toi aussi
MicP !
edit: je viens de comprendre pour
$2 avant
$1 : en fait, c'est dans la déclaration de la fonction que j'avais cette impression car, dans le fil du script ensuite,
$1 est bien avant
$2.... désolé de ne pas avoir saisi tout de suite ! :rolleyes: