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 15/01/2010, 11h37   #1
Membre du Club
 
Inscription : mai 2004
Messages : 183
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 183
Points : 66
Points : 66
Par défaut SH affectation variables

bonjour
dans ma variable r il ya a tous les noms des schemas je veux
affecter la variable schema dans ma commande pg_dump
genre
Code :
1
2
 
for s in `echo $r | /usr/local/pgsql/bin/pg_dump bd -Fc -x -O  -n $r -U mich >  /home/mich/$r.gz`;
mais ca marche pas
merci
Code :
1
2
3
4
5
6
7
 
 
r='select nspname from pg_namespace where nspname ;'
for s in `echo $r | /usr/local/pgsql/bin/pg_dump bd -Fc -x -O  -n claude -U mich >  /home/mich/claude.gz`;
do
echo $s;
done;
moulery est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2010, 12h03   #2
Expert Confirmé
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 1 896
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 1 896
Points : 3 676
Points : 3 676
Citation:
Envoyé par moulery
mais ca marche pas
Tu m'étonnes !

Tu te rends bien compte que
Code :
echo $r | /usr/local/pgsql/bin/pg_dump bd -Fc -x -O  -n $r -U mich >  /home/mich/$r.gz
ne produit aucune sortie : le résultat de la commande est redirigée vers un fichier .gz

Que devrait contenir $r (donne un échantillon, stp) ?
Et comment fais-tu pour l'obtenir (manuellement) ?
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2010, 13h29   #3
Membre du Club
 
Inscription : mai 2004
Messages : 183
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 183
Points : 66
Points : 66
Par défaut pass param

merci pour ta réponse mais t'as pas trop bien compris
ou je me suis mal expliqué
Code :
1
2
3
 
r='select nspname from pg_namespace where nspname ;'
for s in `echo $r | /usr/local/pgsql/bin/pg_dump bd -Fc -x -O  -n nomduschema -U mich >  /home/mich/ nomduschema.gz`;
do
echo $s;
done;

ca doit contenir le nom du schema nspname
je te remercie
moulery est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2010, 13h51   #4
Expert Confirmé
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 1 896
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 1 896
Points : 3 676
Points : 3 676
J'ai l'impression que tu essaies de tout faire en même temps, et, donc, forcément, tu mélanges tout, et "ça marche pas"...

le for ne lira rien, puisqu'il n'y a rien dans le in, sinon une commande qui redirige sa sortie vers un fichier .gz

Code :
1
2
3
4
5
6
7
for i in $(echo "foo bar baz"); do echo $i; done
foo
bar
baz
#note bien que normalement, on ne procède pas ainsi (c'est juste pour l'exemple)
for i in $(echo "foo bar baz" >/tmp/fichier.null); do echo $i; done
#que dalle !
Donc, je recommence :
Que devrait contenir $r (donne un échantillon, stp) ?
Comment fais-tu pour l'obtenir (manuellement) ?
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2010, 14h38   #5
Membre du Club
 
Inscription : mai 2004
Messages : 183
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 183
Points : 66
Points : 66
Par défaut Script sh

salut
la facon de faire m'importe peu
je cherche un script .sh qui lit tous les schemas de ma Base de donnée
et qui les sauvegarde par pg_dump point barre !!
@+
Michel
moulery 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 +1. Il est actuellement 14h23.


 
 
 
 
Partenaires

Hébergement Web