Bash: comment appeler la commande et stocker le résultat dans une variable?

Fondamentalement, je veux pouvoir invoquer une commande donnée, dans ce cas mysql -uanon -ppwd -db mydb -e "select count(*) from table1". Et puis prenez ce résultat de commandes (le nombre sur cette table) et placez-le dans une variable dans le script bash. Quel est le moyen le plus simple d'y parvenir?

26
demandé sur GregD 2010-04-28 19:16:34

2 réponses

Vous voudrez probablement utiliser le mode batch (- B) et désactiver les noms de colonnes (--disable-column-names) pour la sortie mysql non interactive:

out=$(mysql -B -db mydb -uanon -ppwd --disable-column-names  -e "select count(*) from table1";)
40
répondu Jürgen Hötzel 2010-04-28 15:33:08
$ A=$(mysql -uanon -ppwd -db mydb -e "select count(*) from table1")
$ echo $A

En d'autres termes, utilisez la syntaxe $ ().

14
répondu unwind 2010-04-28 15:17:51