两段Perl脚本代码(数组应用与say用法)
#!/usr/bin env perl
@zeng = `top -b -n 1`;
foreach (@zeng) {
print "$_n";
}
二、say的用法:自动换行
#!/user/bin env perl
use 5.010; #表示使用perl 5.10的版本。
say "Hello World!";
my @fred = above_average(1..10);
print "@fred is @fredn";
print "(Should be 6 7 8 9 10)n";
my @barney = above_average(100, 1..10);
print "@barney is @barneyn";
print "(Should be just 100)n";
sub average {
if (@_ == 0) { return }
my $count = @_;
my $sum = total(@_);
$sum/$count;
}
sub above_average {
my $average = average(@_);
my @list;
foreach my $element (@_); {
if ($element > $average) {
push @list, $element;
}
}
@list;
}
#!/usr/bin/perl -w
use 5.010;
greet( 'Fred');
greet( 'barney');
sub greet {
state $last_person;
my $name = shift;
print "Hi $name!";
if ( defined $last_person ) {
print "$last_person is also here!n";
}
else {
print "You are the first one here!n";
}
$last_person = $name;
}
greet( 'Fred' );
greet( 'barney' );
greet( 'wilma' );
greet( 'Betty' );
sub greet {
state @names;
my $name = shift;
print "Hi $name!";
if ( @names ) {
print "I've seen: @namesn";
}
else {
print "You are the first one here!n";
}
push @names, $name;
}
学习perl的unless控制结构
例如:unless($fred=~/^([A-Z_]w*$/i){print"Thevalueof$freddoesn'tlooklikeaPerlidentifiername.n";}使用unless意味着,要么条件为真,要么执行某块代码。这就好像使用if控制
有关perl正则表达式的一些杂项
$也能匹配n见Perl语言入门,page132,注释61/^.*$/能匹配"n"么?能!因为$不仅能匹配行尾,也能匹配n2/^.*$/能匹配"bn"么?能!.能b匹配.n匹配$3/^.*$/能匹配"
perl中heredoc使用说明
格式printEOFyoutextgohereEOFsubusage{printEOF;Usage:test.pl-cconfig,-ffile-llines-cconfigfile-ffilename-lnumberoflinesEOF}NOTE:thelastEOFmuststartatthebeginningoftheline!!!youcanuseotherwordsinstead
标签:也能,杂项,这就,数组,使用说明