Bonjour,
Je cherche a récupérer tout ce qui se trouve avec le caractère =
voici mes commandes:
1 2 3
|
Server_linux1% echo "--commande=SNDMSG MSG(COUCOU) TOUSR(*SYSOPR)" | sed 's:^.*=\(.*\)$:\1:g'
SNDMSG MSG(COUCOU) TOUSR(*SYSOPR) |
En ligne de commande cela fonctionne bien mais pas en script. Je comprends pas pourquoi :-(
1 2 3 4 5 6 7 8
|
#!/bin/sh
#set -x
commande1=$(echo "${1}" | sed "s:^.*=\(.*\)$:\1:g")
echo "$commande1"
commande2=$(echo "${2}" | sed "s:^.*=\(.*\)$:\1:g")
echo "$commande2"
exit |
je lance le script avec ces paramètres
./scripts_test.sh --com1=toto --com2=SNDMSG MSG(COUCOU) TOUSR(*SYSOPR)
il devrait m'afficher:
1 2
| toto
SNDMSG MSG(COUCOU) TOUSR(*SYSOPR) |
Le but est que la 2eme champs quelque soit le contenu qui se trouve après --com2=
soit pris en compte dans la variable $commande2
Mais ça fonctionne pas :-(
quelqu'un peut il m'aider ?
Merci par avance
Partager