トップページへ

bashでMySQLのselect結果を出力する方法

小粋空間 » MySQL » bashでMySQLのselect結果を出力する方法

bashでMySQLのselect結果を出力する方法を紹介します。

1.問題点

MySQLで次のようなデータベース・テーブルを作成し、2件のデータをinsertしました。

mysql> describe foo;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(32) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
mysql> select * from foo;
+------+------+
| id   | name |
+------+------+
|    1 | aaa  |
|    2 | bbb  |
+------+------+
2 rows in set (0.00 sec)

が、このデータをbashで出力する方法が分かりません。

ということで、bashでMySQLのselect結果を出力する方法を紹介します。

2.bashでMySQLのselect結果を出力する

bashでMySQLのselect結果を出力するには次のようにします。

#!/bin/sh
 
server="localhost"
database="test"
user="root"
pass="[パスワード]"
 
sql="select * from foo"
 
result=`mysql -h $server -D $database -u $user -p"$pass" -N -e "${sql}"`
echo "$result"

実行結果

# ./test.sh
1       aaa
2       bbb

« 前の記事へ

次の記事へ »

トップページへ