私の期待: 次のコマンドを使用して、最初の引数の値を perl.pl ファイルを呼び出すすべてのファイルに送信する必要があります。
./perl.pl 1
次のファイルを使用して読み取られます: (perl.pl)
#!/usr/bin/perl
package Black;
use strict;
use warnings;
#subroutines
sub get_x();
#variables
our $XE = -1;
my ($param1, $param2, $param3) = @ARGV;
my $x = get_x();
sub get_x()
{
$XE = $param1;
return $XE;
}
exit;
次に、perl.pl への入力 (0 または 1) に基づいてコード ベースを実行する別のスクリプトを作成しました。ファイルは ./per.pl で、次のように Linux 端末から呼び出します: ./per.pl これは私が書いたコードです:
#!/usr/bin/perl
require "perl.pl";
my $xd = Black::get_x();
if ($xd ==1){
print $xd;}
else {
print "5";
}
出口;
しかし、これは私がこれらのコマンドを書くときに得られるものです:
./perl.pl 1
私はそれを印刷しようとしましたが、それは1を印刷します...この場合、コードから印刷のようなものを削除しました
./per.pl
そして今、私は何も得ません。1を印刷したいのですが、そうではありません
前もって感謝します