これが私のコードです-
print $cpu_arch."\n";
if ($cpu_arch eq'AMD64') {
print "Remote machine is 64bit\n";
}
CPU アーキテクチャに応じて、$cpu_arch は x86 または AMD64 を返します。問題は、$cpu_arch が何を返しても、if ループ条件が満たされないことです。$cpu_arch をむさぼり食ってみましたが、それも役に立たないようです。
これが私のコードです-
print $cpu_arch."\n";
if ($cpu_arch eq'AMD64') {
print "Remote machine is 64bit\n";
}
CPU アーキテクチャに応じて、$cpu_arch は x86 または AMD64 を返します。問題は、$cpu_arch が何を返しても、if ループ条件が満たされないことです。$cpu_arch をむさぼり食ってみましたが、それも役に立たないようです。
文字列の演算子はeq
あなたが持っている通りです。あなたの問題はあなたのオペレーターではなく、データにあります。おそらく、バッファリングが不適切である($|
変数を変更する)か、$cpu_arch
末尾に空白があります。または、リテラル一致ではなく正規表現一致を探している可能性があります(次に必要です/AMD64/
)
あなたのコードは正しいです。$cpu_arch
が含まれていないかAMD64
、if
条件がfalseであると誤解されています(おそらくバッファリングが原因です)。
以下はあなたが調べるのを助けるかもしれません$cpu_arch
。
use Data::Dumper;
{
local $Data::Dumper::Useqq = 1;
print(Dumper($cpu_arch));
}