我有一个包含四列的表格。 分支,日期1,日期2,DATE3
我们有一个与每个分支对应的unix脚本。 列中的日期值可以是31Dec,1jan和其他值。
我们必须为每个分支启动unix脚本,并且具有相同日期值的脚本可以一起运行。
所以我必须为所有分支一次启动所有具有相同日期的脚本。完成一个日期值的脚本后,我需要启动下一个日期。
有人可以建议这样做吗?
答案 0 :(得分:0)
类似的东西:
$ISQL "SELECT Date1 FROM mytab UNION SELECT Date2 FROM mytab UNION SELECT Date3 FROM mytab" | while read Date
do
(
print "Doing Date $Date"
$ISQL "SELECT branch FROM mytab WHERE '$Date' IN (Date1,Date2,Date3)" | while read Branch
do
my_big_unix_script.ksh $Branch || touch /tmp/oh-dear &
done
wait
[[ ! -f /tmp/oh-dear ]]
) || exit 1
done
其中$ ISQL是你的unix shell设置用于运行一段sql的任何方法(也许是一个包装器循环isql,或者其他什么。)