繁体   English   中英

Unix shell脚本中的perl timegm()错误

[英]perl timegm() error inside unix shell script

我试图在unix脚本中运行perl脚本。 但是在执行它的时候我遇到了一个错误,没有timegm()perl函数就可以正常工作。 这是代码和错误消息。

#!/ bin / ksh

    echo "I M IN KSH"
    i=10
    echo "value of i in ksh is $i"
    perl << _MYCODE_

    print "I M IN PERL\n";
    use Time::Local;

    my \$i = $i;    
    print "Value of i in perl $i\n";    
    $time_epoo = timegm(13,06,22,29,2,2016-1900);     

    print "$time_epoo"

    _MYCODE_   

    echo "BACK IN KSH"

------------------------OUTPUT WITH ERROR--------------
I M IN KSH
value of i in ksh is 10
syntax error at - line 7, near "="
Execution of - aborted due to compilation errors.
BACK IN KSH
-------------------------------------------------------

使用-e标志让perl执行。 然后使用参数方法将shell变量传递给perl脚本。 然后使用$ARGV[0]处理perl中的值

echo "I M IN KSH"
i=10
echo "value of i in ksh is $i"
perl -e '

print "I M IN PERL\n";
use Time::Local;

my $i = $ARGV[0];
print "Value of i in perl $i\n";
$time_epoo = timegm(13,06,22,29,2,2016-1900);

print "$time_epoo"

'   $i

echo "BACK IN KSH"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM