使用linux脚本将应用程序输出写入mysql数据库

时间:2013-11-15 13:44:04

标签: mysql linux bash output

有谁能告诉我如何使用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!");
}

}

我想在表格中为每个System.out

生成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退出时,它会产生一行值:Hello World!Message 1!Message 2!Message 3!

1 个答案:

答案 0 :(得分:0)

尝试以下方法:

#!/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