Chinaunix

标题: 【求教】如何得到子进程已经完成了?(也请红袖姐看看吧) [打印本页]

作者: please    时间: 2003-04-04 11:18
标题: 【求教】如何得到子进程已经完成了?(也请红袖姐看看吧)
本人写了一个shell程序如下:
....
echo "开始查询数据,请稍等......"
cat > synsql.sql << EOF
   select * from aa;
EOF
sqlplus -S test/test123 << EOF
start synsql.sql
EOF
echo "数据导入完毕!"
......
我想在终端显示一个查询进度,但不知道怎样才能知道sqlplus中的查询已完成。以便终止进度条。
请大虾们帮我想想办法吧.

另外,由于不知道sqlplus语句要运行多久,那么我要怎么样才能得到进度条的步进数度呢?
作者: nkliyong    时间: 2003-04-04 11:33
标题: 【求教】如何得到子进程已经完成了?(也请红袖姐看看吧)
我想在终端显示一个查询进度,但不知道怎样才能知道sqlplus中的查询已完成。----echo出东西不就完成了嘛.
以便终止进度条----这个好象不大好办,可能需要两个同时跑,sqlplus完成啦就把进度条kill掉.
我想在终端显示一个查询进度,但不知道怎样才能知道sqlplus中的查询已完成。以便终止进度条。----这个肯定没法实现.
作者: please    时间: 2003-04-04 11:52
标题: 【求教】如何得到子进程已经完成了?(也请红袖姐看看吧)
终端显示查询进度,不是显示查询结果。
比如说,后台有可能需从1000万条数据中查询1000条数据需10秒,我在终端显示查询进度,(windows中的进度条),因此,需知道什么时候SQL语句查询完成,以便终止进度。
作者: 红袖添香    时间: 2003-04-05 05:25
标题: 【求教】如何得到子进程已经完成了?(也请红袖姐看看吧)
...

那个进度条是在屏幕上一共打上80个(或其它拟定好的数值)反白的":", 所以要求能够运行80次打印过程, 我不知道你能不能够把SQL倒入数据过程分解成80段?比如说它会有输出,能不能通过什么手段检查到呢?我没用过你说的sqlplus...  
作者: please    时间: 2003-04-07 13:38
标题: 【求教】如何得到子进程已经完成了?(也请红袖姐看看吧)
哦,也就是说将整个运行过程分解成n个小段,然后,按这n个小段显示进度.谢谢红袖姐




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2