アプリケーションをLinuxスクリプトを使用してMySQLデータベースに出力します
質問
Bashスクリプトを使用してアプリケーションの出力をMySQLに書き込む方法を教えてください。 たとえば、次のコードを持つJavaアプリケーション
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
System.out.println("Message 1!");
System.out.println("Message 2!");
System.out.println("Message 3!");
}
.
}
システムごとに4行4行を生産したい。
そのスクリプトを試してみました
app_name="HelloWorld"
app_output=$(java $app_name);
mysql -u<username> -p'<password>' <db_name> <<_EOF_
INSERT INTO logs_tbl (app_name,text) VALUES ("$app_name","$app_output");
_EOF_
.
しかし問題は、Appが価値を持つexit:Hello World!メッセージ1!メッセージ2!メッセージ3!
解決
次のことを試してください:
#!/bin/bash
app_name="HelloWorld"
java $app_name | while read line
do
echo "INSERT INTO logs_tbl (app_name,text) VALUES ('$app_name','$line');" | mysql -u <username> -p '<password>' <db_name>
done
. 所属していません StackOverflow