在shell脚本上同时执行两个查询

时间:2012-06-06 15:19:13

标签: sql oracle shell

我有一个shell脚本,我必须在其中执行两个查询(在不同的数据库上),将结果假脱机到文本文件,最后调用一个处理这些文本文件信息的C ++程序。像这样:

sqlplus user1/pw1@database1 @query1.sql
sqlplus user2/pw2@database2 @query2.sql

./process_db_output

两个查询都需要一些时间来执行。其中一个可能需要10分钟,而另一个通常更快。我想要做的是同时执行它们,当两者都完成后,调用处理实用程序。

有关如何操作的任何建议吗?

1 个答案:

答案 0 :(得分:6)

使用&来查询查询,然后使用wait等待所有子进程完成,然后使用c ++来处理结果。 代码:

 #!/bin/bash
 # first calling
 sqlplus user1/pw1@database1 @query1.sql &
 sqlplus user2/pw2@database2 @query2.sql &

 #now waiting
 wait
 #done waiting
./process_db_output
相关问题