-
script avec paramètres
bonjour
j'ai écrit un script
#!/bin/bash
# Script pour envoyer un sms ave gammu-smsd
# $1 numéro de téléphone mobile
# $2 message
echo Envoi du SMS au numéro $1 avec message $2
sudo gammu-smsd-inject TEXT $1 -text $2
pi@raspberrypi:~ $ envoi-sms 0686913782 Box3g
Envoi du SMS au numéro 0686913782 avec message Box3g
gammu-smsd-inject[14318]: Created outbox message OUTC20160108_124209_00_0686913782_sms0.smsbackup
Written message with ID /var/spool/gammu/outbox/OUTC20160108_124209_00_0686913782_sms0.smsbackup
ok c'est bon
pi@raspberrypi:~ $ envoi-sms 0686913782 "La Box3g"
Envoi du SMS au numéro 0686913782 avec message La Box3g
Unknown parameter ("Box3g")
pi@raspberrypi:~ $
pi@raspberrypi:~ $ envoi-sms 0686913782 "La-Box3g"
Envoi du SMS au numéro 0686913782 avec message La-Box3g
c'est ok
pourquoi cette erreur quand le message contient des espaces
cordialement
-
Bonjour :coucou:
La réponse est dans la question: parce qu'il y a des espaces.
En bash, et à moins de savoir pourquoi ne pas, il faut protéger les variables.
Quand tu écris:
Code:
sudo gammu-smsd-inject TEXT $1 -text $2
"La" est paramètre de "-text". Et "Box3g" est paramètre de "gammu-smsd-inject" ce qui pour lui n'a aucun sens.
Code:
sudo gammu-smsd-inject TEXT "$1" -text "$2"
Ici les espaces font bien partie du paramètre de "-text".
PS: Tu ne devrais pas mettre de numéro de téléphone dans ton message de forum. Protège-toi.
-
merci pour la réponse
mais comment faire pour envoyé un message du style La Box3g est démarrée
cordialement
-
En quoi le message précédent ne répond-il pas à cette question ?
-
veuillez m'excuser je n'avais pas lu complètement la réponse
sudo gammu-smsd-gammu TEXT "$1" -text "$2"
répond favorablement à mon problème
merci