- 论坛徽章:
- 0
|
现在我发现一个非常奇怪的问题#!/usr/local/perl5/bin/perl
$omc_id = shift || die $usage;
$msc_id = shift || die $usage;
$src_dir = "/opt/BOCO.DAL/data/source/siemens_s_shomc_$omc_id/MSC";
$dy=`date "+%Y"`;
$dm=`date "+%m"`;
$dd=`date "+%d"`;
chomp($dy);
chomp($dm);
chomp($dd);
#printf "%0.2d%0.2d",$dm,$dd;
$da1=$dm.$dd;
print "$da1";
mkdir "/opt/BOCO.DAL/data/source/siemens_s_shomc_$omc_id/mscpm/$da1";
$dst_dir = "/opt/BOCO.DAL/data/source/siemens_s_shomc_$omc_id/mscpm/$da1";
$src_file="$msc_id.pm.data";
print "$src_dir/$src_file\n";
$destusmm_file="$msc_id.USMM.data";
$destusvm_file="$msc_id.USVM.data";
$destustm_file="$msc_id.USTM.data";
$destcpxx_file="$msc_id.CPXX.data";
$destdest_file1="$msc_id.DEST1.data";
$destc7ls_file="$msc_id.C7LS.data";
$destdest_file2="$msc_id.DEST2.data";
$destdest_file3="$msc_id.DEST3.data";
$destdest_file4="$msc_id.DEST4.data";
$destdest_file5="$msc_id.DEST5.data";
$destdest_file6="$msc_id.DEST6.data";
$destdest_file7="$msc_id.DEST7.data";
$destdest_file8="$msc_id.DEST8.data";
$destc7ll_file="$msc_id.C7LL.data";
$desttgrp_file="$msc_id.TGRP.data";
my $end_usmm_flag = 0;
open (IN,"$src_dir/$src_file" ||die "can not open in\n";
open (OUTUSMM,">;$dst_dir/$destusmm_file" || die "can not open out\n";
open (OUTUSVM,">;$dst_dir/$destusvm_file" || die "can not open out\n";
open (OUTUSTM,">;$dst_dir/$destustm_file" || die "can not open out\n";
open (OUTCPXX,">;$dst_dir/$destcpxx_file" || die "can not open out\n";
open (OUTDEST1,">;$dst_dir/$destdest_file1" || die "can not open out\n";
open (OUTC7LS,">;$dst_dir/$destc7ls_file" || die "can not open out\n";
open (OUTDEST2,">;$dst_dir/$destdest_file2" || die "can not open out\n";
open (OUTDEST3,">;$dst_dir/$destdest_file3" || die "can not open out\n";
open (OUTDEST4,">;$dst_dir/$destdest_file4" || die "can not open out\n";
open (OUTDEST5,">;$dst_dir/$destdest_file5") || die "can not open out\n";
open (OUTDEST6,">;$dst_dir/$destdest_file6") || die "can not open out\n";
open (OUTDEST7,">;$dst_dir/$destdest_file7") || die "can not open out\n";
open (OUTDEST8,">;$dst_dir/$destdest_file8") || die "can not open out\n";
open (OUTC7LL,">;$dst_dir/$destc7ll_file") || die "can not open out\n";
open (OUTTGRP,">;$dst_dir/$desttgrp_file") || die "can not open out\n";
while ($line = <IN>;)
{
if ($line =~ /^#<GETTRAFILE:FILE=MT.USMM/)
{
$end_usvm_flag = 0;
}
if ($end_usvm_flag == 0)
{
#print OUTUSVM "$line\n";
print "$line\n";
}
if ($line = ~/^END JOB/)
{
$end_usvm_flag = 1;
}
# print "$end_usmm_flag\n";
# print "$line\n";
}
我的本意是打开一个文件 如果碰到一行的行首是^#<GETTRAFILE:FILE=MT.USMM 开始把这个文件打到屏幕上或文件
知道碰到一行的行首是END JOB就结束。
但是运行这个程序,我发现在屏幕上只打印出一行
#<GETTRAFILE:FILE=MT.USMM.FR4,IV=10-0-11-0;
我这个程序有什么问题马,
原始文件如下:
#<GETTRAFILE:FILE=MT.USVM.FR2,IV=10-0-11-0;
MSC10/AD386L7174E/MCH9101W-R08/815 03-12-12 13:13:20
1881 omt20: batch/WNMS#1 2893/00880
GETTRAFILE:FILE=MT.USMM.FR2,IV=10-0-11-0;
TRAFFIC MEASUREMENT : PRELIMINARY DATA
JOBNO MEASUREMENT VARIANT VERSION SCAN JOB EXCH FILENAME
TYPE SVA SFV TIME TYPE ID
-----+-------------+-------+-------+----+-------+-----+-----------------
9371 USMM G0 39 15 DAILY MSC10 MT.USMM.FR2
BEGIN END INTERVAL PERIODS
-------------------------------------
03-12-12 03-12-12
MSC10/AD386L7174E/MCH9101W-R08/815 03-12-12 13:13:20
1881 omt20: batch/WNMS#1 2893/00880
END JOB 1881
 |
|