Requête mysql dans une variable

Résolu
Bonjour all,

Alors voila, je stocke une requête SQL dans une variable, exemple :

ma_variable=echo "ma requête"

Cela fonctionne sauf que ma requête retourne plusieurs résultat et le tout s'affiche en vrac :

Mac 00 0D 60 FF 8C 18 00 14 22 E6 C4 F6 00 15 C5 CF 44 40 00 1D 09 DF 46 6E 00 20 E0 67 07 A0

Y a t'il un moyen de séparer les divers résultats??

Merci d'avance
Configuration: Windows XP
Firefox 3.0.3

7 réponses

  1. Merci Merci,

    Va vraiment falloir que je me mette sur sed et awk car ça ma l'air vraiment puissant
    1. Modérateur
      [tmpfs]$ echo ${var}
      Mac 00 0D 60 FF 8C 18 00 14 22 E6 C4 F6 00 15 C5 CF 44 40 00 1D 09 DF 46 6E 00 20 E0 67 07 A0
      
      [tmpfs]$ echo ${var/Mac /} | sed 's/\(...\)\{6\}/&;/g;s/^/Mac /;s/;/\n/g'
      Mac 00 0D 60 FF 8C 18
      00 14 22 E6 C4 F6
      00 15 C5 CF 44 40
      00 1D 09 DF 46 6E
      00 20 E0 67 07 A0
      
      [tmpfs]$  
      ;-))
      1. bah en fait il me le faudrait comme ça
        Mac xx xx xx xx xx xx
        yy yy yy yy yy yy
        zz zz zz zz zz zz

        parce qu'en fait sinon visuellement c'est illisible
        1. Modérateur
          Salut,

          Le résultat sera tours de la même forme, à savoir :
          Mac xx xx xx xx xx xx yy yy yy yy yy yy zz zz zz zz zz zz
          ???

          Et tu le voudrais comment ?
          1. bien sur, je te donne tout ça.

            Alors j'ai fait echo car c'est comme ça que je fait mes requêtes dans mon script bash.

            echo "requête;" | mysql --user=user --password=password

            Ma requête est la suivante :

            var==( $(echo "use PortAdrsMac; select Mac from InfoSwitch where Port=8 and SwitchName='HP2848C0';" | mysql --user=user --password=user) )

            J'ai mis les tables en gras, comme ça c'est plus clair.
            Cette requête me donne les adresses mac en fonction du nom et du port du switch mais des fois il peut y avoir plusieurs adresses Mac.