Exécution de commande avec back quotes et variables...
Résolu
floo
-
Floo -
Floo -
A voir également:
- Quote terminal mac
- Commande terminal mac - Guide
- Adresse mac - Guide
- @ Sur mac - Guide
- Nettoyer son mac - Guide
- Temperature mac - Guide
3 réponses
grep -c '"$svc_prov"' forti_svc.txt
- faute de frappe: c'est bien cela que je souhaite : double quotes entourées des simples quotes
Salut,
Tu peux soit effectivement utiliser les quotes ` ` pour récupérer un résultat :
Ou utiliser, et c'est plus simple, la forme suivante avec parenthèses :
Tu peux soit effectivement utiliser les quotes ` ` pour récupérer un résultat :
res=`<maCommande>`
Ou utiliser, et c'est plus simple, la forme suivante avec parenthèses :
res=$(<maCommande>)
Merci!
J'ignorai que l'on pouvait ne pas mettre de back quotes dans la 2e solution.
Par contre j'ai donc cela dans mon script du coup :
statu_svc=$(grep -c '\"$svc_prov\"' forti_svc.txt)
mais lors de l'éxécution le contenu de ma variable n'est pas pris en compte à cause des simples quotes entourant le reste (je crois)...et là je coince encore! :(
J'ignorai que l'on pouvait ne pas mettre de back quotes dans la 2e solution.
Par contre j'ai donc cela dans mon script du coup :
statu_svc=$(grep -c '\"$svc_prov\"' forti_svc.txt)
mais lors de l'éxécution le contenu de ma variable n'est pas pris en compte à cause des simples quotes entourant le reste (je crois)...et là je coince encore! :(
PAs de soucis :)
$svc_prov est situé dans une boucle et récupère un à un des noms de ports réseau sans guillemets de type http https ou bien encore smi-s-5989.
forti_svc.txt contient une configuration de firewall dans laquelle je souhaite voir s'il trouve les services récupéré précédemment.
extrait de forti_svc.txt:
edit "smi-s-5989"
edit "smi-s-5988"
...
Je souhaite que smi-s-598 renvoi 0 --> pas de correspondance
mais que smi-s-5989 renvoi 1 et smi-s-5988 aussi.
$svc_prov est situé dans une boucle et récupère un à un des noms de ports réseau sans guillemets de type http https ou bien encore smi-s-5989.
forti_svc.txt contient une configuration de firewall dans laquelle je souhaite voir s'il trouve les services récupéré précédemment.
extrait de forti_svc.txt:
edit "smi-s-5989"
edit "smi-s-5988"
...
Je souhaite que smi-s-598 renvoi 0 --> pas de correspondance
mais que smi-s-5989 renvoi 1 et smi-s-5988 aussi.
hello
qu'est ce qui est recherché ?
exactement "$svc_prov" ou le contenu de la variable svc_prov
qu'est ce qui est recherché ?
exactement "$svc_prov" ou le contenu de la variable svc_prov
C'est le contenu de la variable qui m'intéresse, mais dans le terme exact :
extrait de forti_svc.txt:
edit "smi-s-5989"
edit "smi-s-5988"
...
Je souhaite que smi-s-598 renvoi 0 --> pas de correspondance
mais que smi-s-5989 renvoi 1 et smi-s-5988 aussi.
du coup j'ai tenté de mettre des quotes un peu dans tous les sens...mais il y a peu etre plus simple ? :)
extrait de forti_svc.txt:
edit "smi-s-5989"
edit "smi-s-5988"
...
Je souhaite que smi-s-598 renvoi 0 --> pas de correspondance
mais que smi-s-5989 renvoi 1 et smi-s-5988 aussi.
du coup j'ai tenté de mettre des quotes un peu dans tous les sens...mais il y a peu etre plus simple ? :)
Nickel ! La 2e solution est la bonne ! Merci!
commande:
statu_svc=$(grep -c "\"$svc_prov\"" forti_svc.txt)
affichage du debug :
grep -c '"tcp_902-903"' forti_svc.txt
statu_svc=1
alors que dans mon fichier j'en ai bien 2 qui auraient pu correspondre sans les bonnes quotes:
grep "tcp_902-903" forti_svc.txt
edit "tcp_902-903"
edit "tcp_902-9033"
Merci messieurs pour votre aide, je vais enfin le finir ce foutu script ;)
(passer d'une marque de firewall à une autre quand aucune aide n'est fournie...)
commande:
statu_svc=$(grep -c "\"$svc_prov\"" forti_svc.txt)
affichage du debug :
grep -c '"tcp_902-903"' forti_svc.txt
statu_svc=1
alors que dans mon fichier j'en ai bien 2 qui auraient pu correspondre sans les bonnes quotes:
grep "tcp_902-903" forti_svc.txt
edit "tcp_902-903"
edit "tcp_902-9033"
Merci messieurs pour votre aide, je vais enfin le finir ce foutu script ;)
(passer d'une marque de firewall à une autre quand aucune aide n'est fournie...)