G'day,
Я использую следующий фрагмент Perl для извлечения выходных данных из команды кластера Solaris.
open(CL,"$clrg status |");
my @clrg= grep /^[[:lower:][:space:]]+/,<CL>;
close(CL);
При печати содержимого элементов массива @clrg BTW я получаю следующее: «=>» и «
=><=
=>nas-rg mcs0.cwwtf.bbc.co.uk No Online<=
=> mcs1.cwwtf.bbc.co.uk No Offline<=
=><=
=>apache-rg mcs0.cwwtf.bbc.co.uk No Online<=
=> mcs1.cwwtf.bbc.co.uk No Offline<=
=><=
Когда я заменяю его следующим фрагментом Perl, пустые строки не совпадают.
open(CL,"$clrg status |");
my @clrg= grep /^[[:lower:][:space:]]{3,}/,<CL>;
close(CL);
И я получаю следующее:
=>nas-rg mcs0.cwwtf.bbc.co.uk No Online<=
=> mcs1.cwwtf.bbc.co.uk No Offline<=
=>apache-rg mcs0.cwwtf.bbc.co.uk No Online<=
=> mcs1.cwwtf.bbc.co.uk No Offline<=
Простой вопрос: почему?
Кстати, использование {1,} во втором фрагменте Perl также соответствует пустым строкам!
Любые предложения с благодарностью приняты!
ура