raspaiのshellを作る。まずは単純なselect文だけ。
https://gist.github.com/ShigeoTejima/7fcb68ffd3e5ffc596f8
を参考
/home/raspai
に、
slt_20161204_1.sh
として作成します。
https://gist.github.com/ShigeoTejima/7fcb68ffd3e5ffc596f8
を参考
/home/raspai
に、
slt_20161204_1.sh
として作成します。
ーーーーーーーーーーーー./slt_20161204_1.shで実行
#!/bin/bash
function get_one_value() {
cmd=2016/12/04 17:43 direct echo
echo “$cmd”
}
function main() {
get_one_value
}
####. $(dirname $0)/database.conf
main “$@”
ーーーーーーーーーーーーここまでOK(単純にechoを$変数で表示まで)
#!/bin/bash
function get_one_value() {
cmd=2016/12/04 17:43 direct echo
echo “$cmd”
}
function main() {
get_one_value
}
####. $(dirname $0)/database.conf
main “$@”
ーーーーーーーーーーーーここまでOK(単純にechoを$変数で表示まで)
ーーーーーーーーーーーー./slt_20161204_1.shで実行
#!/bin/bash
function get_one_value() {
cmd=’SELECT * FROM t_sensor WHERE time_stamp IN (SELECT max(time_stamp) FROM t_sensor)’
echo “$cmd”
}
function main() {
get_one_value
}
####. $(dirname $0)/database.conf
main “$@”
ーーーーーーーーーーーーここまでOK(SQL文の表示まで)
#!/bin/bash
function get_one_value() {
cmd=’SELECT * FROM t_sensor WHERE time_stamp IN (SELECT max(time_stamp) FROM t_sensor)’
echo “$cmd”
}
function main() {
get_one_value
}
####. $(dirname $0)/database.conf
main “$@”
ーーーーーーーーーーーーここまでOK(SQL文の表示まで)
ーーーーーーーーーーーー./slt_20161204_2.shで実行
#!/bin/bash
#!/bin/bash
function get_one_value() {
DATABASE=20161129_sensor
USERNAME=raspai
PASSWORD=Aa123456
USERNAME=raspai
PASSWORD=Aa123456
local query=”SELECT * FROM t_sensor WHERE time_stamp IN (SELECT max(time_stamp) FROM t_sensor)”
local result
result=$(mysql -B –user=${USERNAME} –password=${PASSWORD} –database=${DATABASE} -N -e “${query}”)
if [[ $? -eq 0 ]]; then
echo “value: [${result}]”
else
echo “fail to select from mysql.” 1>&2
fi
local result
result=$(mysql -B –user=${USERNAME} –password=${PASSWORD} –database=${DATABASE} -N -e “${query}”)
if [[ $? -eq 0 ]]; then
echo “value: [${result}]”
else
echo “fail to select from mysql.” 1>&2
fi
echo “${result}”
}
}
function main() {
get_one_value
}
get_one_value
}
main “$@”
ーーーーーーーーーーーーここまでOK(SQL文の表示まで、でも2行表示される)
ーーーーーーーーーーーー./slt_20161204_2.shで実行
#!/bin/bash
ーーーーーーーーーーーー./slt_20161204_2.shで実行
#!/bin/bash
function get_one_value() {
DATABASE=20161129_sensor
USERNAME=raspai
PASSWORD=Aa123456
USERNAME=raspai
PASSWORD=Aa123456
local query=”SELECT * FROM t_sensor WHERE time_stamp IN (SELECT max(time_stamp) FROM t_sensor)”
local result
result=$(mysql -B –user=${USERNAME} –password=${PASSWORD} –database=${DATABASE} -N -e “${query}”)
echo “${result}”
}
local result
result=$(mysql -B –user=${USERNAME} –password=${PASSWORD} –database=${DATABASE} -N -e “${query}”)
echo “${result}”
}
function main() {
get_one_value
}
get_one_value
}
main “$@”
ーーーーーーーーーーーーここまでOK(SQL文の表示まで。、1行表示になりました。)
ーーーーーーーーーーーーここまでOK(SQL文の表示まで。、1行表示になりました。)
次に結果を配列に入れて表示させてみる。
http://shellscript.sunone.me/array.html
を参考。
ーーーーーーーーーーーー./slt_20161204_3.shで実行
#!/bin/bash
http://shellscript.sunone.me/array.html
を参考。
ーーーーーーーーーーーー./slt_20161204_3.shで実行
#!/bin/bash
function get_one_value() {
DATABASE=20161129_sensor
USERNAME=raspai
PASSWORD=Aa123456
USERNAME=raspai
PASSWORD=Aa123456
local query=”SELECT * FROM t_sensor WHERE time_stamp IN (SELECT max(time_stamp) FROM t_sensor)”
local result
result=($(mysql -B –user=${USERNAME} –password=${PASSWORD} –database=${DATABASE} -N -e “${query}”))
local result
result=($(mysql -B –user=${USERNAME} –password=${PASSWORD} –database=${DATABASE} -N -e “${query}”))
echo “${result[@]}”
echo “第0は、${result[0]}”
echo “第1は、${result[1]}”
echo “第2は、${result[2]}”
echo “第3は、${result[3]}”
echo “第4は、${result[4]}”
echo “第5は、${result[5]}”
echo “第6は、${result[6]}”
echo “第7は、${result[7]}”
}
echo “第0は、${result[0]}”
echo “第1は、${result[1]}”
echo “第2は、${result[2]}”
echo “第3は、${result[3]}”
echo “第4は、${result[4]}”
echo “第5は、${result[5]}”
echo “第6は、${result[6]}”
echo “第7は、${result[7]}”
}
function main() {
get_one_value
}
get_one_value
}
main “$@”
ーーーーーーーーーーーーここまでOK(配列result[@]にスペース毎に入れられました!!)
ーーーーーーーーーーーーここまでOK(配列result[@]にスペース毎に入れられました!!)
さあ、次は、取り込んだ配列変数を条件(水が必要かどうか?y/n)に合わせて結果を挿入(updateして書き換える)する、をやろう。。
以上