将变量从 shell 脚本传递到 Perl 脚本

问题描述

我正在尝试将两个值从我现有的 shell 代码发送到需要处理的 Perl 脚本。我对 perl 比较陌生,我尝试使用 ARGV[0] 和 ARGV[1] 接受它们,但是当我尝试打印这些值时,它们显示为空白。我似乎无法理解这里的问题,尽管从这里看来,Perl 脚本没有得到值。变量保存字符串,我通过在 shell 脚本中打印来验证它们。

我根据可用的解决方案使用了两种语法,但它们似乎都不起作用: 有 2 个变量 BITNUM 和 BITENV,我正在传递:

In the shell script I did:
/scriptdirectory/execute.pl $BITNUM $BITENV
To accept them in Perl I did:
my $var1 = $ARGV[0];
my $var2 = $ARGV[1];
print "Var 1 is $var1\n";
print "Var 2 is $var2\n";

这不起作用,所以我尝试在 Shell 脚本中使用 export

export BITNUM
export BITENV
/scriptdirectory/execute.pl $ENV{"BITNUM"} $ENV{"BITENV"}

为了在 Perl 中接受它们,我做到了:

my $var1 = $ENV{BITNUM};
my $var2 = $ENV{BITENV};
print "Var 1 is $var1\n";
print "Var 2 is $var2\n";

这两个都返回空白值。这是因为我传递了多个值,还有另一种我没有尝试过的方法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...