gpt4 book ai didi

bash - frmcmp退出状态不应为0

转载 作者:行者123 更新时间:2023-12-02 10:54:02 25 4
gpt4 key购买 nike

我试图编写一个脚本来编译本应开始维护的Oracle 6i应用程序中的所有表单,报表,库和菜单(是的,太旧了),但是我进入了菜单,似乎好像frmcmp尽管无法编译.mmb文件,但仍返回0。

例如,要编译表格,我需要:
for i in查找。名称'* .fmb'| awk -F '{print $ 2}'
do
frmcmp userid=user/pass@database batch=yes module=/path$i.fmb module_type=form output_file=/path$i.fmx compile_all=yes window_state=minimize 2> errorcomform.log
if [ ${?} != 0 ]
then
echo -e "${FALLA}FAILED${NORMAL}"
fi
done

这很好用,因为如果编译失败,$ {?}返回1。但是,如果我尝试:
for i in查找。名称'* .mmb'| awk -F '{print $ 2}'
do
frmcmp userid=user/pass@database batch=yes module=/path$i.mmb module_type=menu output_file=/path$i.mmx compile_all=yes window_state=minimize 2> errorcomform.log
if [ ${?} != 0 ]
then
echo -e "${FALLA}FAILED${NORMAL}"
fi
done

如您所见,唯一的主要区别是module type=form的值更改为menu

另外,errorcomform.log中没有任何内容。

要生成错误,我只需获取其他文件(例如.mmx或任何文本文件)并将其更改为.mmb,以便find可以找到它。尽管它不会生成.mmx文件,但似乎frmcmp仍返回0并且未显示错误消息。

有人对此有线索吗?由于这是一种过时的技术,因此Google不会给出很多答复。

提前致谢。

最佳答案

您应该只检查是否有.fmx或.mmx或.plx文件。
如果不是这种情况,则可以假定编译失败。

我们也以这种方式使用它,并且效果很好。

关于bash - frmcmp退出状态不应为0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45964397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com