Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/07/2007, 16h06   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 34
Points : 10
Points : 10
Par défaut [shell] variable avec quote!

Bonjour,

Je stocke dans une variable shell le resultat d'une commande SQL.
J'essaye de faire la chose suivante:
Code :
1
2
3
4
5
6
7
8
9
 
test=212
 
variable=`sqlplus -s login/mdp << !
set head off
select table_name from table_base where index=coucou$test;
!`
 
echo $variable
Je voudrais que dans index, il y ait 'coucou212' avec les quote '....car sinon, en base, il me dit qu'il ne connait pas l'identifiant.

Si je met
Code :
1
2
 
index="'coucou$test'"
j'ai toujours une erreur identifiant: il m'a ecrit "'coucou212'" : invalid identifier

avec 'coucou212' ecrit en dur, ca marche...
Pouvez-vous m'aider?

Merci

ps: j'espere que c'est le bon endroit pour poster ce message
magicwill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h08   #2
Membre chevronné
 
Avatar de f-k-z
 
Homme K-Z. F.
Ingénieur sécurité
Inscription : juin 2006
Messages : 393
Détails du profil
Informations personnelles :
Nom : Homme K-Z. F.
Âge : 27
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur sécurité
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juin 2006
Messages : 393
Points : 675
Points : 675
Yop,
et avec
Code :
index="\'coucou$test\'"
cela te donne quoi?
@++

F-k-z
__________________
GNU/Linux c'est une question de VI ou de MORE.
http://www.goodbye-microsoft.com
"Linux is user friendly, its just very selective of its friends*", m'enfou, je suis son pote :p

Un post vous est utile ou est constructif, ayez le réflexe du +1 pour le contributeur ( C'est gratuit et ça donne l'impression d'être utile :p )
Le tag et la ne sont pas fait que pour le décor, pensez-y !
R.I.P. F-k-z 13/06/2006 - 12/10/2011
*Linux est convivial, il est juste très sélectifs pour ses amis.
f-k-z est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h10   #3
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 306
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 306
Points : 8 590
Points : 8 590
Ca marche pas avec simplement index=\'coucou$test\' ?
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h11   #4
Candidat au titre de Membre du Club
 
Inscription : juillet 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 34
Points : 10
Points : 10
Non, ca ne marche pas non plus..
J'obtiens ca:
Code :
1
2
 
"\'coucou212\'": invalid identifier
magicwill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h16   #5
Candidat au titre de Membre du Club
 
Inscription : juillet 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 34
Points : 10
Points : 10
Citation:
Envoyé par _Mac_
Ca marche pas avec simplement index=\'coucou$test\' ?
Avec ça, j'ai un invalid character...et en fait, ca fait where index=\'coucou212\' dans la requete...
magicwill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h25   #6
Candidat au titre de Membre du Club
 
Inscription : juillet 2007
Messages : 34
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 34
Points : 10
Points : 10
J'ai trouvé...et je crois que je vais prendre cette solution...

En fait, vos réponses m'ont inspiré de prendre une variable à part...

donc, du coup, ca donne:

Code :
1
2
3
4
5
6
7
8
9
 
test=212
intermediaire="'coucou$test'"
 
variable=`sqlplus -s login/mdp << !
set head off
select table_name from table_base where index=$intermediaire;
!`
echo $variable
Mais si vous trouvez quelque chose de moins moche, dites moi...je peux tester à tout moment... je pensais ptetre pouvoir mettre quelque chose avec $(...) ou $ qq ch... mais bon..

Merci pour vos reponses rapides!
magicwill est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h24.


 
 
 
 
Partenaires

Hébergement Web