【问题标题】:perl using backticks times outperl 使用反引号超时
【发布时间】:2015-07-03 09:14:52
【问题描述】:

我有一个问题希望有人能帮忙解决 我正在运行一个 perl 脚本,该脚本调用带有一组参数的 python 脚本,如下所示

my $outText=`sudo /usr/bin/python /usr/local/bin/tacms/scriptname.py $pNumber $crnNumber`

脚本名称应该根据传递的参数处理信息,然后给出保存在变量 outText 中的终端输出。 在某些情况下这失败了,我怀疑这是超时。那么我将如何增加反引号的超时时间

【问题讨论】:

  • “失败”是什么意思?你能澄清一下“失败”吗?
  • 如果$outText 未定义,请检查$?$!,如system 的文档中所述。

标签: python perl timeout backticks


【解决方案1】:

是的,这是我调用的脚本,所以我所做的就是说,如果 $outText 的结果为空,则重复整个过程,否则继续...即

my $outText=`sudo /usr/bin/python /usr/local/bin/tacms/scriptname.py $pNumber $crnNumber`

if ($outText eq ""){
    my $outText=`sudo /usr/bin/python /usr/local/bin/tacms/scriptname.py $pNumber $crnNumber`;
    //use variable here;
    }
else{
        //use variable here;
        }

至少这样我的系统会在失败之前至少重试一次。那是我能想到的最好的解决方案。被调用的 python 脚本在 SOAP 中调用 Web 服务,所以有时它会超时。

【讨论】:

    猜你喜欢
    • 2012-06-07
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    • 2015-05-29
    • 1970-01-01
    • 2019-10-28
    • 2017-02-26
    • 1970-01-01
    相关资源
    最近更新 更多