使用后缀“|”操作实现从标准输入设备中读取内容。
#!/usr/bin/perl
use strict;
my %who;
open(WHOFH,"who |") or die "can not open who:$!";
while(<WHOFH>){
next unless /^(/S+)/;
$who{$1}++;
}
foreach (sort{$who{$b} <=> $who{$a}} keys %who){
printf "%10s %d/n",$_,$who{$_};
}
close WHOFH or die "close error:$!";
在Linux运行结果
landopen@server01:~$ perl whos_there.pl
landopen 1
dinwen 1
该Perl脚本使用标准输入从系统获取在线用户列表,并统计每个用户的登录次数。通过管道操作符('|')实现从'who'命令输出内容的读取,然后解析并统计用户登录频率。
1389

被折叠的 条评论
为什么被折叠?



