bashスクリプトから取得-データベースから変数に選択 、クエリ結果を変数に読み込むことができます。
例
mysql> SELECT * FROM domains;
+-------+---------+
| user | domain |
+-------+---------+
| user1 | domain1 |
| user2 | domain2 |
| user3 | domain3 |
+-------+---------+
使用法
$ myvar=$(mysql -D$MYDB -u$MYUSER -p$MYPASS -se "SELECT domain FROM domains")
$ echo $myvar
domain1 domain2 domain3
echo
出力用のbashコマンドです。その後、 $myvar
を分割します 別々の変数に
:
$ read var1 var2 var3 <<< $myvar
$ echo $var1
domain1
$ echo $var2
domain2
これらの2つのコマンドを1つに組み合わせることができます:
read var1 var2 var3 <<< $(mysql -D$MYDB -u$MYUSER -p$MYPASS -se "SELECT domain FROM domains")
結果を配列に格納することができます(そこにあるレコードの数がわからない場合に便利です):
$ read -ra vars <<< $(mysql -D$MYDB -u$MYUSER -p$MYPASS -se "SELECT domain FROM domains")
$ for i in "${vars[@]}"; do
$ echo $i
$ done
domain1
domain2
domain3