SSH 接続に Perl Expect モジュールを使用しています。次のようなサブ関数を使用するモジュールが既にあります。
$exp->spawn("ssh -o ConnectTimeout=$connectTimeout $user\@$ip") or die ("unable to spawn \n");
@obj=$exp->expect( $commandTimeout,
[ qr/.*$quotedhostname.*/ => sub
{
print "connected \n";
$exp->send("term length 0", "\n");
$exp->expect($commandTimeout2,);
&executeCommands();
}
],
しかし、私の $quotedhostname は大文字です。LOWERCASE の場合もこれをキャッチする必要があります。次のような方法はないでしょうか。
[ qr/.*$quotedhostname.*/ OR /.*$lowercasequotedhostname.*/ => sub
それとも、別の[qr]
ブロックを追加する必要がありますか?