私はコミュニティの精神で、川の水位を無料で監視するコミュニティ プロジェクトのソリューションを作成するのを手伝っています。この取り組みの最終的な成果物は、河川水位調査からデータを取得し、オンライン コミュニティ用のグラフを生成するシステムになります。
私はプロジェクトの初期段階にあり、Bash に精通しているので、これを使用してプローブからデータを含むテキスト ファイルを取得し、それを MySQL データベースにプッシュしています。つまずきのブロックにぶつかるまで、すべてが本当にうまくいっています。データベース テーブルの列の多くは数値であるため、MySQL コマンド ライン ツールを使用してこれらと対話するには、バッククォートを使用する必要があります。残念ながら、MySQL ステートメントからの出力を取得して変数に入れたいのですが、2 組のバック ティックが原因で、MySQL が正しいコマンドを取得していないと思います。
私はそれを次のような厄介な回避策でごまかしましたが、それはすべて非効率的に機能します:
mysql -N -D $targetDatabase -e "select \`"$timeSample"\` from RiverDataDays where date="$dateOfFile";" >tmpValue
dbEntry=`cat tmpValue`
echo $dbEntry
しかし実際には、私がやりたいことは、次のように変数に直接プッシュすることです。
dbEntry=`mysql -N -D $targetDatabase -e "select \`"$timeSample"\` from RiverDataDays where date="$dateOfFile";"`
echo $dbEntry