Chinaunix首页 | 论坛 | 博客

lua

  • 博客访问: 616660
  • 博文数量: 91
  • 博客积分: 10035
  • 博客等级: 上将
  • 技术积分: 3490
  • 用 户 组: 普通用户
  • 注册时间: 2006-02-04 17:40
文章分类

全部博文(91)

文章存档

2012年(1)

2011年(2)

2009年(13)

2008年(75)

我的朋友

分类:

2008-06-24 01:28:47

一个perl经典应用

一次在perl的群里聊天,有个人提了个类似的问题,今天在邮件里面又看到了
 
系统:linux   perl版本:5.8
目的:
想使用perl来实时抓取tcpdump数据,并统计10分钟的流量。
 
我的代码片段如下:
#!/usr/bin/perl -w
 
#got system time now
my $time_now;
my $time_temp = `date`;
if ($time_temp =~ /(\d\d):(\d\d):(\d\d)/){
  $time_now = ($1*60*60) + ($2*60) + $3;
}
 
#got tcpdump data
chomp(my @data = `tcpdump -i eth0 -nnn`);
print $time_now;
foreach my $data(@data){
  print $data;
}
 
遇到的问题:
运行程序之后,无法正确打印 $data ,只停留在启动tcpdump时两行;
 
 
miFor 
#!/usr/bin/perl
open FD,"tcpdump -i eth0|";
while(){
    print $_;
}
阅读(712) | 评论(0) | 转发(0) |
0

上一篇:UXTheme

下一篇:w3c标准

给主人留下些什么吧!~~