これを行うためのより良い方法を必ずしも探しているわけではありません。出力の説明をいただければ幸いです。最近、シニア プログラマーから、コードが 1 つのインスタンスしか機能しないのはなぜかと尋ねられました。私が見つけたのは、それが他のすべての出来事で機能したということでした. これが私の例です:
#!/usr/bin/perl -w
use strict;
my @list_env_vars = (
'$SERVER',
'$SERVER',
'$SERVER',
'$SERVER',
'$SERVER',
'$SERVER',
);
foreach (@list_env_vars){
print "$_ = ".glob()."\n";
}
perl 5.004 の出力:
$SERVER = UNIX_SERVER
$SERVER =
$SERVER = UNIX_SERVER
$SERVER =
$SERVER = UNIX_SERVER
$SERVER =
または perl 5.10 の出力:
$SITE = $SITE
Use of uninitialized value in concatenation (.) or string at glob_test.pl line 14.
$SITE =
$SITE = $SITE
Use of uninitialized value in concatenation (.) or string at glob_test.pl line 14.
$SITE =
$SITE = $SITE
Use of uninitialized value in concatenation (.) or string at glob_test.pl line 14.
$SITE =
私は個人的にこの方法で glob() を使用したことがないので、彼に答える準備ができていませんでした。私はperldoc globのドキュメントを読み、そのページのFile::Globリンクをたどりましたが、出力を説明するものを見つけることができませんでした。どんな助けでも大歓迎です。