VIVEZ LE
FOOTBALL !

Comment récupérer le résultat d'une commande dans une variable


Comment récupérer le résultat d'une commande dans une variable




Préambule


Il est bien souvent nécessaire de récupérer le résultat d'une commande (ou de son code retour) dans une variable afin de pouvoir l'exploiter plus tard dans son script.
Pour se faire nous allons voir plusieurs exemples différents.

Syntaxe


var=$(commande)

Note : A noter que l'ancienne méthode utilisant les quotes inversées (`commande`) est à proscrire et que celle présentée est préférable à bien des égards.

Exemples

  • Récupération de la sortie standard
    • stdout uniquement
      • var=$(commande)
    • stdout et stderr
      • var=$(commande 2>&1)
    • Récupération du code retour ($?)
      • Code retour seul
        • commande
        • var=$?
      • Les deux
        • var=$(commande)
        • var=$?
Publié par jipicy - Dernière mise à jour le 18 novembre 2009 à 19:51 par marlalapocket
Ce document intitulé « Comment récupérer le résultat d'une commande dans une variable » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Suggestions
  •  Comment récupérer le résultat d'une commande dans une variable
  •  (Shell) Stocker le resultat d'une commande (Résolu) » Bonjour, a tous Je fais un script SH, j'ai longuement chercher et j'arrive pas a trouver un moyen de stocker le resultat d'une commande dans une variable Par exemple je fais un echo * || grep '\$' et je veux stocker la sortie dans une variable
  •  [ms-dos] resultat commande dans variable » Meilleure réponse: J'ai carrément plus simple, fonctionne impec sous Windows XP SP2 set jour=%date:~0,2% set mois=%date:~3,2% set annee=%date:~6,4% Ma variable jour prendra les 2 caractères à partir du premier Ma variable mois prendra les 2 caractères à p
  •  [MS DOS] récupérer résultat commande find » Meilleure réponse: Salut, Utilise la commande FOR /F comme ceci: for /F "usebackq tokens=3 delims= " %i IN (`find /c monfichier`) DO set myvar=%i ici ce qui est entre ` ` est une commande DOS. C'est le résultat de cette commande qui sera prise par le FOR.
  •  Résultat d'une commande bash dans python (Résolu) » Bonjour, Je souhaiterais que le résultat d'une commande bash s'affiche dans une interface graphique en python (Tkinter). Voici la commande en question et son résultat: $ cat /dev/usbtmc0 Minor Number Manufacturer Product Serial Number 001 Tektronix...
  •  Recuperer le resultat d'une cmd dos en java » Bonjour, je cherche une solution pour recuperer le resultat d'une commande dos (tels qu'un ping ou ipconfig ) vers une chaine de type String en java s'il ya une methode pour ca n'esither pas a me la proposer et merci d'avance
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?
Comment lire un fichier ligne par ligne
Le remplacement de variables en shell Bash