Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1614 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Linux shell] execution de commande ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Linux shell] execution de commande ?

n°1378149
celestin14​09
Posté le 31-05-2006 à 14:38:16  profilanswer
 

Salut,
 
Je recherche un moyen d'executer cette commande qui est contenu dans une variable.
Exemple:

Code :
  1. commande="pg_dump -U postgres -d -i -c -O facildb > test.sql"


 
Pour information je n'utilise pas l'option -f de pg_dump car le nom "test.sql" est generer automatiquement.
 
bref
 

Code :
  1. commande="pg_dump -U postgres -d -i -c -O facildb > test.sql"
  2. $commande


 
me genere une erreur:

Code :
  1. pg_dump: trop d'arguments en ligne de commande (le premier étant «>»


 

mood
Publicité
Posté le 31-05-2006 à 14:38:16  profilanswer
 

n°1379977
youx21
Posté le 02-06-2006 à 15:43:38  profilanswer
 

celestin1409 a écrit :

Salut,
 
Je recherche un moyen d'executer cette commande qui est contenu dans une variable.
Exemple:

Code :
  1. commande="pg_dump -U postgres -d -i -c -O facildb > test.sql"


 
Pour information je n'utilise pas l'option -f de pg_dump car le nom "test.sql" est generer automatiquement.
 
bref
 

Code :
  1. commande="pg_dump -U postgres -d -i -c -O facildb > test.sql"
  2. $commande


 
me genere une erreur:

Code :
  1. pg_dump: trop d'arguments en ligne de commande (le premier étant «>»



 
 
 
pour executer une commande, à la limite tu n'as pas besoin de la placer dans une variable. Maintenant, si c'est absoluement nécessaire pour ton script, tu te trompe de cote. il faut utiliser: `   (je me souviens pas de son nom, ALTGR - 7)

Code :
  1. commande=`pg_dump -U postgres -d -i -c -O facildb > test.sql`
  2. $commande

n°1385601
celestin14​09
Posté le 12-06-2006 à 09:33:23  profilanswer
 

youx21 a écrit :

pour executer une commande, à la limite tu n'as pas besoin de la placer dans une variable. Maintenant, si c'est absoluement nécessaire pour ton script, tu te trompe de cote. il faut utiliser: `   (je me souviens pas de son nom, ALTGR - 7)

Code :
  1. commande=`pg_dump -U postgres -d -i -c -O facildb > test.sql`
  2. $commande



 
Salut youx21 ben en fait ta proposition est interessante mais je viens reellement de localiser le probleme. En fait quand je recois la commande a executer je la recois de cette facon:

Code :
  1. commande='pg_dump -U postgres -d -i -c -O facildb > test.sql'


en fait avec des simples : ' (simple guillemet)
et le probleme c'est que les simples guillemets ne permet plus l'interpretation des pipes ou redirections comme dans mon cas.
donc je recherche le moyen de les interpreter de nouveau.
Voila si tu as une idee.

n°1385602
Elmoricq
Modérateur
Posté le 12-06-2006 à 09:35:16  profilanswer
 

eval $commande


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Linux shell] execution de commande ?

 

Sujets relatifs
Execution d'une commade shellajouter une imprimante en ligne de commande
Linux - Redirection de la sortie vers un fichierévènements pour controles créés à l'éxecution
Appel d'une commande bloquante via system()Macro Excel Execution
Pb avec la commande execLa commande grep..
Lancer execution fichier 
Plus de sujets relatifs à : [Linux shell] execution de commande ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR